Condividi tramite


Cenni preliminari sulle proprietà di automazione interfaccia utente

NotaNota

La presente documentazione è destinata agli sviluppatori di .NET Framework che desiderano utilizzare le classi UI Automation gestite definite nello spazio dei nomi System.Windows.Automation.Per informazioni aggiornate sull'UI Automation, vedere Windows Automation API: Automazione interfaccia utente (la pagina potrebbe essere in inglese).

I provider di automazione interfaccia utente espongono proprietà sugli elementi di Microsoft UI Automation. Queste proprietà consentono alle applicazioni client di automazione interfaccia utente di individuare informazioni sui componenti dell'user interface (UI), soprattutto controlli, che includono dati statici e dinamici.

Nel presente argomento sono contenute le seguenti sezioni.

  • Identificatori di proprietà
  • Proprietà per categoria
  • Localizzazione
  • Proprietà ed eventi
  • Argomenti correlati

In questa sezione vengono forniti cenni preliminari sulle proprietà di Microsoft UI Automation. Informazioni più specifiche vengono fornite negli argomenti seguenti:

Identificatori di proprietà

Ogni proprietà è identificata da un numero e da un nome. I nomi delle proprietà vengono utilizzati solo per il debug e la diagnostica. I provider utilizzano gli IDs numerici per identificare le richieste di proprietà in arrivo. Tuttavia, per identificare le proprietà da recuperare, le applicazioni client utilizzano esclusivamente l'oggetto AutomationProperty, che incapsula il numero e il nome.

Gli oggetti AutomationProperty che rappresentano determinate proprietà sono disponibili sotto forma di campi in varie classi. Per motivi di sicurezza, i provider di automazione interfaccia utente ottengono questi oggetti da un insieme distinto di classi contenute in Uiautomationtypes.dll.

Nella tabella seguente le proprietà sono suddivise in categorie in base alle classi che contengono gli IDs di AutomationProperty.

Tipi di proprietà

I client ottengono gli identificatori da

I provider ottengono gli identificatori da

Proprietà comuni a tutti gli elementi (vedere le tabelle seguenti)

AutomationElement

AutomationElementIdentifiers

Posizione di una finestra ancorata

DockPattern

DockPatternIdentifiers

Stato di un elemento che può essere espanso e compresso

ExpandCollapsePattern

ExpandCollapsePatternIdentifiers

Proprietà di un elemento in una griglia

GridItemPattern

GridItemPatternIdentifiers

Proprietà di una griglia

GridPattern

GridPatternIdentifiers

Visualizzazione corrente e supportata di un elemento con più visualizzazioni

MultipleViewPattern

MultipleViewPatternIdentifiers

Proprietà di un elemento che si sposta su un intervallo di valori, ad esempio un dispositivo di scorrimento

RangeValuePattern

RangeValuePatternIdentifiers

Proprietà di una finestra scorrevole

ScrollPattern

ScrollPatternIdentifiers

Stato e contenitore di un elemento che può essere selezionato, ad esempio in un elenco

SelectionItemPattern

SelectionItemPatternIdentifiers

Proprietà di un controllo che contiene elementi di selezione

SelectionPattern

SelectionPatternIdentifiers

Intestazioni di colonna e riga di un elemento di una tabella

TableItemPattern

TableItemPatternIdentifiers

Intestazioni di colonna e riga e orientamento di una tabella

TablePattern

TablePatternIdentifiers

Stato di un controllo di attivazione/disattivazione

TogglePattern

TogglePatternIdentifiers

Funzionalità di un elemento che può essere spostato, ruotato o ridimensionato

TransformPattern

TransformPatternIdentifiers

Valore e funzionalità in lettura/scrittura di un elemento che include un valore

ValuePattern

ValuePatternIdentifiers

Funzionalità e stato di una finestra

WindowPattern

WindowPatternIdentifiers

Proprietà per categoria

Nelle tabelle seguenti vengono suddivise in categorie le proprietà i cui IDs sono disponibili in AutomationElement e AutomationElementIdentifiers. Queste proprietà sono comuni a tutti i controlli. Tutte tranne alcune rimarranno quasi certamente statiche nel corso della durata dell'applicazione provider. La maggior parte delle proprietà dinamiche è associata a pattern di controllo.

Nella colonna Accesso proprietà sono elencate eventuali altre funzioni di accesso per ogni proprietà, in aggiunta a GetCurrentPropertyValue e GetCachedPropertyValue. Per ulteriori informazioni su come ottenere proprietà in un'applicazione client, vedere Proprietà di automazione interfaccia utente per i client.

NotaNota

Per informazioni specifiche su ogni proprietà, seguire il collegamento nella colonna Accesso proprietà.

Caratteristiche visualizzate

Identificatore proprietà

Accesso proprietà

BoundingRectangleProperty

BoundingRectangle

CultureProperty

n/d

HelpTextProperty

HelpText

IsOffscreenProperty

IsOffscreen

OrientationProperty

Orientation

Tipo di elemento

Identificatore proprietà

Accesso proprietà

ControlTypeProperty

ControlType

IsContentElementProperty

IsContentElement

IsControlElementProperty

IsControlElement

ItemTypeProperty

ItemType

LocalizedControlTypeProperty

LocalizedControlType

Identificazione

Identificatore proprietà

Accesso proprietà

AutomationIdProperty

AutomationId

ClassNameProperty

ClassName

FrameworkIdProperty

FrameworkId

LabeledByProperty

LabeledBy

NameProperty

Name

ProcessIdProperty

ProcessId

RuntimeIdProperty

GetRuntimeId

NativeWindowHandleProperty

NativeWindowHandle

Interazione

Identificatore proprietà

Accesso proprietà

AcceleratorKeyProperty

AcceleratorKey

AccessKeyProperty

AccessKey

ClickablePointProperty

GetClickablePoint

HasKeyboardFocusProperty

HasKeyboardFocus

IsEnabledProperty

IsEnabled

IsKeyboardFocusableProperty

IsKeyboardFocusable

Supporto per i pattern

Identificatore proprietà

Accesso proprietà

IsDockPatternAvailableProperty

GetSupportedPatterns

IsExpandCollapsePatternAvailableProperty

GetSupportedPatterns

IsGridItemPatternAvailableProperty

GetSupportedPatterns

IsGridPatternAvailableProperty

GetSupportedPatterns

IsInvokePatternAvailableProperty

GetSupportedPatterns

IsMultipleViewPatternAvailableProperty

GetSupportedPatterns

IsRangeValuePatternAvailableProperty

GetSupportedPatterns

IsScrollItemPatternAvailableProperty

GetSupportedPatterns

IsScrollPatternAvailableProperty

GetSupportedPatterns

IsSelectionItemPatternAvailableProperty

GetSupportedPatterns

IsSelectionPatternAvailableProperty

GetSupportedPatterns

IsTableItemPatternAvailableProperty

GetSupportedPatterns

IsTablePatternAvailableProperty

GetSupportedPatterns

IsTextPatternAvailableProperty

GetSupportedPatterns

IsTogglePatternAvailableProperty

GetSupportedPatterns

IsTransformPatternAvailableProperty

GetSupportedPatterns

IsValuePatternAvailableProperty

GetSupportedPatterns

IsWindowPatternAvailableProperty

GetSupportedPatterns

Varie

Identificatore proprietà

Accesso proprietà

IsRequiredForFormProperty

IsRequiredForForm

IsPasswordProperty

IsPassword

ItemStatusProperty

ItemStatus

Localizzazione

I provider di UI Automation devono presentare le proprietà seguenti nel linguaggio del sistema operativo:

Proprietà ed eventi

Un concetto strettamente collegato alle proprietà di UI Automation è quello degli eventi di modifica di proprietà. Per le proprietà dinamiche, l'applicazione client deve essere in grado di riconoscere che un valore di proprietà è stato modificato, in modo da aggiornare la propria cache di informazioni o reagire in qualche modo alle nuove informazioni.

I provider generano eventi quando si verifica una modifica nell'UI. Se ad esempio una casella di controllo viene selezionata o deselezionata, viene generato un evento di modifica di proprietà dall'implementazione del provider del pattern Toggle. I provider possono generare eventi in modo selettivo, a seconda che esistano o meno client in ascolto di eventi in generale o di eventi specifici.

Non tutte le modifiche di proprietà generano eventi. Dipende interamente dall'implementazione del provider di automazione interfaccia utente per l'elemento. Ad esempio, i provider proxy standard per le caselle di riepilogo non generano un evento quando il campo SelectionProperty viene modificato. In questo caso, l'applicazione deve invece rimanere in ascolto di un evento ElementSelectedEvent.

I client rimangono in ascolto di eventi sottoscrivendoli. La sottoscrizione di eventi implica la creazione di metodi delegati in grado di gestire gli eventi e quindi il passaggio dei metodi a UI Automation insieme agli eventi specifici che verranno gestiti con tali metodi. Per gli eventi di modifica di proprietà, in particolare, i client devono implementare AutomationPropertyChangedEventHandler.

Vedere anche

Attività

Trovare un elemento di automazione interfaccia utente in base a una proprietà

Restituire proprietà da un provider di automazione interfaccia utente

Generare eventi da un provider di automazione interfaccia utente

Concetti

Memorizzazione nella cache dei client di automazione interfaccia utente

Proprietà di automazione interfaccia utente per i client

Implementazione del provider di automazione interfaccia utente lato server