Tipo di controllo TreeItem

Questo argomento fornisce informazioni sul supporto di Microsoft Automazione interfaccia utente per il tipo di controllo TreeItem.

Il tipo di controllo TreeItem rappresenta un nodo all'interno di un contenitore ad albero. Ciascun nodo può contenere altri nodi, denominati nodi figlio. I nodi padre, ovvero i nodi contenenti nodi figlio, possono essere visualizzati in formato espanso o compresso.

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

In questo argomento sono contenute le sezioni seguenti.

Struttura ad albero tipica

La tabella seguente illustra una visualizzazione tipica del controllo e del contenuto dell'albero Automazione interfaccia utente che riguarda i controlli dell'elemento ad albero e descrive cosa può essere contenuto in ogni visualizzazione. Per altre informazioni sull'albero Automazione interfaccia utente, vedere Panoramica dell'albero Automazione interfaccia utente.

Visualizzazione controlli Visualizzazione contenuto
  • TreeItem
    • CheckBox (0 o 1)
    • Image (0 o 1)
    • Button (0 o 1)
    • TreeItem (0 o più)
  • TreeItem
    • TreeItem (0 o più)

 

I controlli elemento albero possono avere zero o più elementi dell'albero figlio nella visualizzazione contenuto dell'albero Automazione interfaccia utente. Se il controllo elemento albero ha funzionalità oltre a quelle esposte nei modelli di controllo elencati di seguito, il controllo deve essere basato sul tipo di controllo DataItem .

Gli elementi dell'albero compressi non vengono visualizzati nella visualizzazione controllo o nella visualizzazione contenuto fino a quando non diventano espansi e visibili (o possono essere scorrere nella visualizzazione).

La visualizzazione controlli può contenere dettagli aggiuntivi per un controllo, tra cui un'immagine associata o un pulsante. Ad esempio, un elemento in una visualizzazione Struttura potrebbe contenere un'immagine e un pulsante per espandere o comprimere la struttura. Questi oggetti di dettaglio non vengono visualizzati nella visualizzazione contenuto perché le informazioni sono già rappresentate dall'elemento albero padre.

Gli elementi ad albero che vengono scorrevoli sullo schermo vengono visualizzati sia nella visualizzazione del controllo che del contenuto dell'albero Automazione interfaccia utente e devono avere la proprietà IUIAutomationElement::CurrentIsOffscreen (o CachedIsOffscreen) impostata su TRUE.

Proprietà pertinenti

Nella tabella seguente sono elencate le proprietà Automazione interfaccia utente il cui valore o la definizione sono particolarmente rilevanti per il tipo di controllo TreeItem. Per altre informazioni sulle proprietà Automazione interfaccia utente, vedere Recupero delle proprietà da elementi Automazione interfaccia utente.

Proprietà di automazione interfaccia utente 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 Automazione interfaccia utente.
UIA_BoundingRectanglePropertyId Vedere le note. Il rettangolo più esterno che contiene l'intero controllo.
UIA_ClickablePointPropertyId Vedere le note. Questa proprietà deve restituire una posizione che causa la modifica dello stato di selezione dell'elemento dell'albero o la modifica dello stato di selezione.
UIA_ControlTypePropertyId TreeItem Questo valore è uguale per tutti i framework dell'interfaccia utente.
UIA_IsContentElementPropertyId TRUE Il controllo elemento albero è sempre incluso nella visualizzazione contenuto dell'albero Automazione interfaccia utente.
UIA_IsControlElementPropertyId TRUE Il controllo elemento albero è sempre incluso nella visualizzazione controllo dell'albero Automazione interfaccia utente.
UIA_IsKeyboardFocusablePropertyId Vedere le note. Se il controllo può ricevere lo stato attivo, deve supportare questa proprietà.
UIA_IsOffscreenPropertyId Vedere le note. Questa proprietà indica se un controllo elemento albero viene scorrevole dalla schermata.
UIA_ItemStatusPropertyId Vedere le note. Se il controllo contiene lo stato che viene aggiornato in modo dinamico, questa proprietà deve essere supportata in modo che una tecnologia assistive possa ricevere aggiornamenti quando lo stato dell'elemento cambia.
UIA_ItemTypePropertyId Vedere le note. Se il controllo elemento albero usa un'icona visiva per indicare che è un tipo specifico di elemento, questa proprietà deve essere supportata e deve indicare il tipo di elemento.
UIA_LabeledByPropertyId NULL Per i controlli TreeItem l'etichetta viene definita automaticamente.
UIA_LocalizedControlTypePropertyId Vedere le note. Stringa localizzata corrispondente al tipo di controllo TreeItem. Il valore predefinito è "elemento albero" per en-US o inglese (Stati Uniti).
UIA_NamePropertyId Vedere le note. Questa proprietà espone il testo visualizzato per ogni controllo TreeItem.

 

Modelli di controllo obbligatori

Nella tabella seguente sono elencati i modelli di controllo Automazione interfaccia utente necessari per essere supportati da tutti i controlli degli elementi ad albero. Per altre informazioni sui pattern di controllo, vedere UI Automation Control Patterns Overview.

Pattern di controllo/proprietà del pattern Supporto/valore Note
IExpandCollapseProvider Necessario Tutti gli elementi della struttura ad albero devono supportare il pattern di controllo ExpandCollapse perché tutti gli elementi possono essere espansi o compressi.
ExpandCollapseState Espanso, compresso o nodo foglia Gli elementi dell'albero sono nodi foglia quando non vengono espansi o compressi.
IInvokeProvider Dipende da Implementare il pattern di controllo Invoke se l'elemento della struttura ad albero può eseguire un comando.
IScrollItemProvider Dipende da Implementare il pattern di controllo ScrollItem se il contenitore della struttura ad albero supporta il pattern di controllo Scroll .
ISelectionItemProvider Dipende da Implementare il pattern di controllo SelectionItem se è possibile avere una selezione attiva che viene mantenuta quando l'utente torna al contenitore della struttura ad albero.
Selectioncontainer Necessario Questa proprietà espone lo stesso contenitore per tutti gli elementi all'interno del contenitore.

 

Eventi obbligatori

Nella tabella seguente sono elencati gli eventi Automazione interfaccia utente necessari per supportare i controlli degli elementi della struttura ad albero. Per altre informazioni sugli eventi, vedere UI Automation Events Overview.

evento Automazione interfaccia utente Note
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId evento di modifica della proprietà.
UIA_ExpandCollapseExpandCollapseStatePropertyId evento di modifica della proprietà.
UIA_Invoke_InvokedEventId Se il controllo supporta il pattern di controllo Invoke , deve supportare questo evento.
UIA_IsEnabledPropertyId evento di modifica della proprietà. Se il controllo supporta la proprietà IsEnabled , deve supportare questo evento.
UIA_IsOffscreenPropertyId evento di modifica della proprietà. Se il controllo supporta la proprietà IsOffscreen , deve supportare questo evento.
UIA_ItemStatusPropertyId evento di modifica della proprietà. Se il controllo supporta la proprietà ItemStatus , deve supportare questo evento.
UIA_MultipleViewCurrentViewPropertyId evento di modifica della proprietà. Se il controllo supporta il pattern di controllo MultipleView , deve supportare questo evento.
UIA_NamePropertyId evento di modifica della proprietà.
UIA_SelectionItem_ElementAddedToSelectionEventId Se il controllo supporta il pattern di controllo SelectionItem , deve supportare questo evento.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Se il controllo supporta il pattern di controllo SelectionItem , deve supportare questo evento.
UIA_SelectionItem_ElementSelectedEventId Se il controllo supporta il pattern di controllo SelectionItem , deve supportare questo evento.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId evento di modifica della proprietà. Se il controllo supporta il pattern di controllo Toggle , deve supportare questo evento.
UIA_ValueValuePropertyId evento di modifica della proprietà. Se il controllo supporta il pattern di controllo Value , deve supportare questo evento.

 

Commenti

Se un elemento dell'albero include sottoelementi diversi dai nodi struttura figlio, il provider deve gestire attentamente e chiaramente le informazioni sull'oggetto figlio. In Automazione interfaccia utente la struttura ad albero viene gestita dalla gerarchia ad albero stessa. Avendo uno o più elementi figlio non strutturati, le differenze tra di esse e i nodi di struttura figlio effettivi diventano seriamente ambigui.

Informazioni concettuali

Cenni preliminari sui tipi di controllo per l'automazione interfaccia utente

Cenni preliminari su automazione interfaccia utente