Condividi tramite


Tipo di controllo TreeItem

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

Il tipo di controllo TreeItem rappresenta un nodo all'interno di un contenitore ad albero. Ogni nodo può contenere altri nodi, denominati nodi figlio. I nodi padre o i nodi che contengono nodi figlio possono essere visualizzati come espansi o compressi.

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 TreeItem. I requisiti di automazione interfaccia utente si applicano a tutti i controlli degli elementi ad albero 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 e una visualizzazione contenuto tipici dell'albero di automazione interfaccia utente che riguarda i controlli degli elementi della struttura ad albero 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
  • TreeItem
    • CheckBox (0 o 1)
    • Immagine (0 o 1)
    • Pulsante (0 o 1)
    • TreeItem (0 o più)
  • TreeItem
    • TreeItem (0 o più)

 

I controlli elemento albero possono avere zero o più elementi figlio dell'albero nella visualizzazione contenuto dell'albero di automazione interfaccia utente. Se il controllo elemento della struttura ad albero ha funzionalità oltre a quelle esposte nei pattern 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 controllo può contenere dettagli aggiuntivi per un controllo, inclusa un'immagine associata o un pulsante. Ad esempio, un elemento in una visualizzazione struttura può contenere un'immagine e un pulsante per espandere o comprimere la struttura. Questi oggetti dettagli non vengono visualizzati nella visualizzazione contenuto perché le informazioni sono già rappresentate dall'elemento albero padre.

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

Proprietà pertinenti

Nella tabella seguente sono elencate le proprietà di automazione interfaccia utente il cui valore o la cui definizione è particolarmente rilevante per il tipo di controllo TreeItem. 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. Questa proprietà deve restituire una posizione che fa sì che l'elemento dell'albero modifichi lo stato di selezione o diventi attivo.
UIA_ControlTypePropertyId TreeItem Questo valore è lo stesso per tutti i framework dell'interfaccia utente.
UIA_IsContentElementPropertyId TRUE Il controllo elemento della struttura ad albero è sempre incluso nella visualizzazione contenuto dell'albero di automazione interfaccia utente.
UIA_IsControlElementPropertyId TRUE Il controllo elemento della struttura ad albero è 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_IsOffscreenPropertyId Vedere le note. Questa proprietà indica se un controllo elemento della struttura ad 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 della struttura ad albero utilizza un'icona visiva per indicare che è un particolare tipo di elemento, questa proprietà deve essere supportata e deve indicare il tipo di elemento.
UIA_LabeledByPropertyId NULL I controlli degli elementi ad albero sono auto-etichettatura.
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 elemento della struttura ad albero.

 

Modelli di controllo obbligatori

La tabella seguente elenca i pattern di controllo di automazione interfaccia utente necessari per essere supportati da tutti i controlli degli elementi dell'albero. 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
IExpandCollapseProvider Obbligatorio Tutti gli elementi della struttura ad albero devono supportare il pattern di controllo ExpandCollapse perché tutti gli elementi possono essere espansi o compressi.
ExpandCollapseState Nodo espanso, compresso o foglia Gli elementi dell'albero sono nodi foglia quando non vengono espansi o compressi.
IInvokeProvider Dipende Implementare il pattern di controllo Invoke se l'elemento della struttura ad albero può eseguire un comando.
IScrollItemProvider Dipende Implementare il pattern di controllo ScrollItem se il contenitore dell'albero supporta il pattern di controllo Scroll.
ISelectionItemProvider Dipende Implementare il pattern di controllo SelectionItem se è possibile avere una selezione attiva gestita quando l'utente torna al contenitore della struttura ad albero.
SelectionContainer Obbligatorio Questa proprietà espone lo stesso contenitore per tutti gli elementi all'interno del contenitore.

 

Eventi obbligatori

Nella tabella seguente sono elencati gli eventi di automazione interfaccia utente necessari per supportare i controlli degli elementi dell'albero. 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_ExpandCollapseExpandCollapseStatePropertyId evento di modifica delle proprietà.
UIA_Invoke_InvokedEventId Se il controllo supporta il pattern di controllo Invoke, deve supportare questo evento.
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_ItemStatusPropertyId evento di modifica delle proprietà. Se il controllo supporta la proprietàitemStatus, 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_NamePropertyId evento di modifica delle 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 delle proprietà. Se il controllo supporta il pattern di controllo Attiva/Disattiva, deve supportare questo evento.
UIA_ValueValuePropertyId evento di modifica delle proprietà. Se il controllo supporta il pattern di controllo Value, deve supportare questo evento.

 

Osservazioni

Se un elemento della struttura ad 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 dell'albero stessa. Avendo uno o più elementi figlio non struttura-nodo, le differenze tra di esse e i nodi di struttura figlio effettivi diventano seriamente ambigui.

concettuale

panoramica dei tipi di controllo di automazione interfaccia utente

panoramica dell'automazione interfaccia utente