Tipo di controllo DataItem

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

Una voce in un elenco Contatti, ad esempio, è un controllo elemento dati. Un controllo elemento dati contiene informazioni di interesse per un utente finale. È più complicato del semplice elemento elenco poiché contiene informazioni più dettagliate.

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 DataItem. I requisiti di Automazione interfaccia utente si applicano a tutti i controlli dell'elemento di dati 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 di dati 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
  • DataItem
    • Varia (0 o più, può essere strutturato in una gerarchia)
  • DataItem
    • Varia (0 o più, può essere strutturato in una gerarchia)

 

Un elemento dati in una griglia di dati può contenere vari tipi di oggetti, incluso un altro livello di elementi dati o specifici elementi di griglia quali testo, immagini o controlli di modifica. Se l'elemento dell'elemento dati ha un ruolo oggetto specifico, l'elemento deve essere esposto come tipo di controllo specifico; Ad esempio, un tipo di controllo ListItem per un elemento di dati selezionabile nella griglia.

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 DataItem. 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. Supportata se è presente un rettangolo di delimitazione. Se non ogni punto all'interno del rettangolo di selezione è selezionabile e l'elemento esegue test di hit test specializzati, override e fornisce un punto clickable.
UIA_ControlTypePropertyId DataItem
UIA_IsContentElementPropertyId TRUE Il controllo elemento dati deve essere sempre un contenuto.
UIA_IsControlElementPropertyId TRUE Il controllo elemento dati deve essere sempre un controllo.
UIA_IsKeyboardFocusablePropertyId Vedere le note. Se il controllo può ricevere lo stato attivo, deve supportare questa proprietà.
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. Si tratta del valore della stringa che indica all'utente finale l'oggetto sottostante rappresentato dall'elemento, Gli esempi includono "File multimediale" e "Contatto".
UIA_LabeledByPropertyId Null I controlli elemento dati non hanno un'etichetta di testo statico.
UIA_LocalizedControlTypePropertyId Vedere le note. Stringa localizzata corrispondente al tipo di controllo DataItem . Il valore predefinito è "elemento dati" per en-US o inglese (Stati Uniti).
UIA_NamePropertyId Vedere le note. Il controllo elemento di dati contiene sempre un elemento di testo primario che l'utente riconosce come identificatore per l'elemento.

 

Modelli di controllo obbligatori

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

Pattern di controllo Supporto Note
IExpandCollapseProvider Dipende da Se l'elemento di dati può essere espanso o compresso per visualizzare e nascondere le informazioni, è necessario supportare il modello di controllo ExpandCollapse .
IGridItemProvider Dipende da Gli elementi di dati supporteranno il pattern di controllo GridItem quando una raccolta di elementi di dati è disponibile all'interno di un contenitore che può essere spostato nello spazio da elemento a elemento.
IScrollItemProvider Dipende da Tutti gli elementi di dati supportano la possibilità di scorrere in visualizzazione con il pattern di controllo ScrollItem quando il contenitore di dati contiene più elementi che possono essere inseriti sullo schermo.
ISelectionItemProvider Dipende da La possibilità di selezionare gli elementi di dati dipende dal contenuto.
ITableItemProvider Dipende da Se l'elemento di dati è contenuto all'interno di un tipo di controllo DataGrid con un elemento di intestazione, deve supportare il pattern di controllo TableItem .
IToggleProvider Dipende da Se l'elemento di dati contiene uno stato che può essere ciclizzato, deve supportare il pattern di controllo Attiva/Disattiva .
IValueProvider Dipende da Se il testo primario dell'elemento di dati è modificabile, è necessario supportare il pattern di controllo Valore .

 

Utilizzo di DataItem in elenchi di grandi dimensioni

Poiché gli elenchi di grandi dimensioni sono spesso virtualizzati all'interno dei framework dell'interfaccia utente per facilitare le prestazioni, un client Automazione interfaccia utente non può usare la funzionalità di query Automazione interfaccia utente per cercare il contenuto dell'albero completo nello stesso modo in cui può essere usato in altri contenitori di elementi. Un client deve scorrere l'elemento nella visualizzazione (o espandere il controllo per visualizzare tutte le opzioni disponibili) prima di accedere al set completo di informazioni dall'elemento dati.

Quando si chiama SetFocus sull'elemento Automazione interfaccia utente per l'elemento dati, Esplora risorse di Microsoft Windows restituisce correttamente lo stato attivo e imposta lo stato attivo sul controllo Edit all'interno del sottoalbero dell'elemento di dati.

Eventi obbligatori

Nella tabella seguente sono elencati gli eventi Automazione interfaccia utente necessari per supportare i controlli degli elementi di dati. 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à. Se il controllo supporta il pattern di controllo ExpandCollapse , deve supportare questo evento.
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_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.

 

Esempio del tipo di controllo DataItem

L'immagine seguente illustra un tipo di controllo DataItem in un controllo visualizzazione elenco.

screenshot del controllo visualizzazione elenco con tipo di controllo dataitem

La visualizzazione controlli e la visualizzazione contenuto dell'albero Automazione interfaccia utente che riguarda il controllo elemento dati vengono visualizzati di seguito. I pattern di controllo per ogni elemento di automazione sono indicati tra parentesi. Il gruppo "Contoso" fa anche parte della griglia del controllo host della griglia dati. Per un esempio di struttura griglia di livello superiore, vedere Tipo di controllo DataGrid.

albero Automazione interfaccia utente - Visualizzazione controlli Albero Automazione interfaccia utente - Visualizzazione contenuto
  • Group "Contoso" (Table, Grid)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Image "Accounts Receivable.doc"
      • Edit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc")
      • Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM")
      • Modificare "Size" (GridItem, TableItem, Value "11.0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...
  • Group "Contoso" (Table, Grid)
    • DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • Image "Accounts Receivable.doc"
      • Edit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc")
      • Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM")
      • Modificare "Size" (GridItem, TableItem, Value "11.0 KB")
    • DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke)
      • ...

 

Se una griglia rappresenta un elenco di elementi selezionabili, gli elementi selezionabili dell'interfaccia utente corrispondenti possono essere esposti con il tipo di controllo ListItem anziché il tipo di controllo DataItem . Nell'esempio precedente, gli elementi DataItem ("Accounts Receivable.doc" e "Accounts Payable.doc") in Group ("Contoso") possono essere migliorati esponendoli come tipi di controllo ListItem perché tale tipo supporta già il pattern di controllo SelectionItem .

Informazioni concettuali

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

Cenni preliminari su automazione interfaccia utente