Condividi tramite


Tipo di controllo Elenco

In questo argomento vengono fornite informazioni sul supporto di Automazione interfaccia utente Microsoft per il tipo di controllo elenco.

Il tipo di controllo elenco consente di organizzare un gruppo o gruppi di elementi flat e consente a un utente di selezionare uno o più di tali elementi. Il tipo di controllo List list ha una restrizione debole sui tipi di elementi figlio che può contenere. Ciò consente ai provider di automazione interfaccia utente di supportare un elemento noto per i contenitori di selezione.

Le sezioni seguenti definiscono la struttura ad albero di automazione interfaccia utente, le proprietà, i pattern di controllo e gli eventi necessari per il tipo di controllo List. I requisiti di automazione interfaccia utente si applicano a tutti i controlli elenco in cui il framework o la piattaforma dell'interfaccia utente integra il supporto di Automazione interfaccia utente per i tipi di controllo e i pattern di controllo.

Questo argomento contiene le sezioni seguenti.

Struttura ad albero tipica

La tabella seguente illustra un controllo tipico e una visualizzazione contenuto dell'albero di automazione interfaccia utente relativo ai controlli elenco e descrive cosa può essere contenuto in ogni visualizzazione. Per altre informazioni sull'albero di automazione interfaccia utente, vedere ui Automation Tree Overview.

Visualizzazione controlli Visualizzazione contenuto
Contiene gli elementi che corrispondono ai controlli. Rimuove le informazioni ridondanti dall'albero in modo che le tecnologie di assistive technology funzionino con il set di informazioni più piccolo significativo per l'utente finale.
  • Lista
    • DataItem (0 o più)
    • ListItem (0 o più)
    • Gruppo (0 o più)
    • ScrollBar (0, 1 o 2)
  • Lista
    • DataItem (0 o più)
    • ListItem (0 o più)
    • Gruppo (0 o più)

La visualizzazione del controllo per un controllo che implementa il tipo di controllo Elenco ,ad esempio un controllo elenco, è costituito da:

  • Zero o più elementi all'interno del controllo elenco (gli elementi possono essere basati sui tipi di controllo ListItem o DataItem)
  • Zero o più controlli di gruppo all'interno di un controllo elenco
  • Zero, uno o due controlli barra di scorrimento

La visualizzazione contenuto di un controllo che implementa il tipo di controllo Elenco ,ad esempio un controllo elenco, è costituito da:

  • Zero o più elementi all'interno del controllo elenco (gli elementi possono essere basati sui tipi di controllo ListItem o DataItem)
  • Zero o più gruppi all'interno del controllo elenco

Un controllo elenco non deve contenere elementi con una relazione gerarchica diversa da essere raggruppata. Se gli elementi hanno elementi figlio nell'albero di automazione interfaccia utente, il contenitore elenco deve essere basato sul tipo di controllo albero.

Gli elementi selezionabili all'interno del controllo elenco saranno disponibili dai discendenti nell'albero di automazione interfaccia utente del controllo elenco. Tutti gli elementi all'interno del controllo elenco devono appartenere allo stesso gruppo di selezione. Gli elementi selezionabili nell'elenco devono essere esposti come ListItem (anziché tipi di controllo DataItem).

Proprietà pertinenti

La tabella seguente elenca le proprietà di automazione interfaccia utente il cui valore o definizione è particolarmente rilevante per il tipo di controllo elenco. Per altre informazioni sulle proprietà di automazione interfaccia utente, vedere Recupero delle proprietà dagli elementi di automazione interfaccia utente.

Ui Automation, proprietà Valore Note
UIA_AutomationIdPropertyId Vedere le note. Il valore di questa proprietà deve essere univoco tra tutti gli elementi peer nella visualizzazione non elaborata dell'albero di automazione interfaccia utente.
UIA_BoundingRectanglePropertyId Vedere le note. Rettangolo più esterno che contiene l'intero controllo.
UIA_ClickablePointPropertyId Vedere le note. Se il controllo elenco dispone di un punto selezionabile (un punto su cui è possibile fare clic per fare in modo che l'elenco prenda lo stato attivo), tale punto deve essere esposto tramite questa proprietà. Se il valore della proprietà UIA_IsOffscreenPropertyId è TRUE, il tentativo di recuperare questa proprietà genera l'errore UIA_E_NOCLICKABLEPOINT.
UIA_ControlTypePropertyId List
UIA_HelpTextPropertyId Vedere le note. Il testo della Guida per i controlli elenco deve spiegare il motivo per cui all'utente viene chiesto di scegliere un elenco di opzioni. Ad esempio, "Selezione di un elemento da questo elenco imposta la risoluzione di visualizzazione per il monitor".
UIA_IsContentElementPropertyId TRUE Il controllo elenco è sempre incluso nella visualizzazione contenuto dell'albero di automazione interfaccia utente.
UIA_IsControlElementPropertyId TRUE Il controllo elenco è sempre incluso nella visualizzazione controllo dell'albero di automazione interfaccia utente.
UIA_IsKeyboardFocusablePropertyId Vedere le note. Se il controllo può ricevere lo stato attivo della tastiera, deve supportare questa proprietà.
UIA_LabeledByPropertyId Vedere le note. Se è presente un'etichetta di testo statica, questa proprietà deve esporre un riferimento a tale controllo.
UIA_LocalizedControlTypePropertyId Vedere le note. Stringa localizzata corrispondente al tipo di controllo list. Il valore predefinito è "list" per en-US o inglese (Stati Uniti).
UIA_NamePropertyId Vedere le note. Il valore della proprietà Nome di un controllo elenco deve indicare la categoria di opzioni tra cui viene chiesto all'utente di selezionare. Questa proprietà ottiene in genere il nome da un'etichetta di testo statica. Se non è presente un'etichetta di testo statico, lo sviluppatore dell'applicazione deve esporre un valore per la proprietà Nome.
L'unica volta che questa proprietà non è necessaria per i controlli elenco è se il controllo viene utilizzato all'interno del sottoalbero di un altro controllo.

Schemi di controllo e proprietà obbligatori

La tabella seguente elenca i modelli di controllo di automazione interfaccia utente necessari per essere supportati da tutti i controlli elenco. Per altre informazioni sui pattern di controllo, vedere ui Automation Control Patterns Overview.For more information on control patterns, see UI Automation Control Patterns Overview.

Pattern di controllo/pattern, proprietà Supporto/valore Note
IGridProvider Dipende Implementare il pattern di controllo Griglia quando lo spostamento griglia deve essere disponibile in base all'elemento.
IMultipleViewProvider Dipende Implementare il MultipleView pattern di controllo se il controllo può supportare più visualizzazioni degli elementi nel contenitore.
IScrollProvider Dipende Implementare il pattern di controllo Scroll se gli elementi nel contenitore sono scorrevoli.
ISelectionProvider Dipende Se un controllo supporta il tipo di controllo List che supporta la selezione, il controllo deve implementare il Selection pattern di controllo quando uno stato di selezione viene mantenuto tra gli elementi contenuti nel controllo . Se gli elementi all'interno del controllo non sono selezionabili, è possibile utilizzare il tipo di controllo gruppo.
CanSelectMultiple Dipende I controlli elenco possono essere contenitori a selezione multipla o singola.
IsSelectionRequired Dipende I controlli elenco non richiedono sempre che sia selezionato un elemento.
ITableProvider Mai Il pattern di controllo Table non è mai supportato per il tipo di controllo list. Se il controllo deve supportare questo pattern di controllo, il controllo deve essere basato sul tipo di controllo DataGrid.

Eventi obbligatori

Nella tabella seguente sono elencati gli eventi di automazione interfaccia utente necessari per supportare i controlli elenco. Per altre informazioni sugli eventi, vedere Panoramica degli eventi di automazione interfaccia utente .

Evento di automazione interfaccia utente Note
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId evento di modifica delle proprietà.
UIA_IsEnabledPropertyId evento di modifica delle proprietà. Se il controllo supporta la proprietàIsEnabled, deve supportare questo evento.
UIA_IsOffscreenPropertyId evento di modifica delle proprietà. Se il controllo supporta la proprietàIsOffscreen, deve supportare questo evento.
UIA_LayoutInvalidatedEventId Se è possibile modificare il layout degli elementi figlio, il controllo deve supportare questo evento.
UIA_MultipleViewCurrentViewPropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo multipleView, deve supportare questo evento.
UIA_ScrollHorizontallyScrollablePropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_ScrollHorizontalScrollPercentPropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_ScrollHorizontalViewSizePropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_ScrollVerticalScrollPercentPropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_ScrollVerticallyScrollablePropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_ScrollVerticalViewSizePropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Scroll, deve supportare questo evento.
UIA_Selection_InvalidatedEventId Se il controllo supporta il pattern di controllo Selection, deve supportare questo evento.
UIA_StructureChangedEventId

concettuale

panoramica dei tipi di controllo di automazione interfaccia utente

panoramica dell'automazione interfaccia utente