Cenni preliminari sui pattern di controllo per l'automazione interfaccia utente
Nota |
---|
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). |
In questo argomento viene presentata un'introduzione ai pattern di controllo di Microsoft UI Automation. I pattern di controllo consentono di suddividere in categorie ed esporre le funzionalità di un controllo indipendentemente dal tipo o dall'aspetto del controllo stesso.
In UI Automation i pattern di controllo vengono utilizzati per rappresentare i comportamenti comuni dei controlli. Ad esempio, il pattern di controllo Invoke viene utilizzato che i controlli che è possibile richiamare, quali i pulsanti, mentre il pattern di controllo Scroll per i controlli che includono barre di scorrimento, quali caselle di riepilogo, visualizzazioni elenco o caselle combinate. Poiché ogni pattern di controllo rappresenta una funzionalità distinta, è possibile combinarli per descrivere l'insieme completo di funzionalità supportate da un determinato controllo.
Nota |
---|
I controlli di aggregazione, ossia compilati con controlli figlio che forniscono a user interface (UI) le funzionalità esposte dal controllo padre, devono implementare tutti i pattern di controllo normalmente associati a ogni controllo figlio.I controlli figlio non devono invece necessariamente implementare questi pattern di controllo. |
Nel presente argomento sono contenute le seguenti sezioni.
- Componenti dei pattern di controllo per l'automazione interfaccia utente
- Provider e client di automazione interfaccia utente
- Pattern di controllo dinamici
- Classi e interfacce dei pattern di controllo
- Argomenti correlati
Componenti dei pattern di controllo per l'automazione interfaccia utente
I pattern di controllo supportano i metodi, le proprietà, le relazioni e gli eventi necessari per definire una parte distinta di funzionalità disponibile in un controllo.
La relazione tra un elemento di automazione utente e i relativi elementi padre, figlio e di pari livello descrive la struttura dell'elemento all'interno della struttura ad albero di UI Automation.
I metodi consentono ai client di automazione interfaccia utente di modificare il controllo.
Le proprietà e gli eventi forniscono informazioni sulla funzionalità del pattern di controllo, nonché sullo stato del controllo.
Il rapporto tra pattern di controllo e UI è identico a quello tra interfacce e oggetti Component Object Model (COM). In COM è possibile eseguire una query su un oggetto per chiedere quali interfacce supporta e quindi utilizzare tali interfacce per accedere alle funzionalità. In UI Automation i client di automazione interfaccia utente possono chiedere a un controllo quali pattern di controllo supporta e quindi interagire con il controllo tramite le proprietà, i metodi, gli eventi e le strutture esposti dai pattern di controllo supportati. Ad esempio, per una casella di modifica a più righe, i provider di automazione interfaccia utente implementano IScrollProvider. Quando un client riconosce che un oggetto AutomationElement supporta il pattern di controllo ScrollPattern, può utilizzare le proprietà, i metodi e gli eventi esposti da tale pattern di controllo per modificare il controllo o per accedere alle relative informazioni.
Provider e client di automazione interfaccia utente
I provider di automazione interfaccia utente implementano i pattern di controllo per esporre il comportamento appropriato per una parte di funzionalità specifica supportata dal controllo.
I client di automazione interfaccia utente accedono ai metodi e alle proprietà delle classi di pattern di controllo di UI Automation e li utilizzano per ottenere informazioni sull'UI o per modificare l'UI. Queste classi di pattern di controllo sono disponibili nello spazio dei nomi System.Windows.Automation, ad esempio InvokePattern e SelectionPattern.
I client utilizzano i metodi AutomationElement, ad esempio AutomationElement.GetCurrentPropertyValue o AutomationElement.GetCachedPropertyValue, oppure le funzioni di accesso common language runtime (CLR) per accedere alle proprietà di UI Automation su un pattern. Ogni classe di pattern di controllo ha un membro di campo, ad esempio InvokePattern.Pattern o SelectionPattern.Pattern, che identifica tale pattern di controllo e può essere passato come parametro al metodo GetCachedPattern o GetCurrentPattern per recuperare questo pattern per un oggetto AutomationElement.
Pattern di controllo dinamici
Alcuni controlli non supportano sempre lo stesso insieme di pattern di controllo. I pattern di controllo sono considerati supportati quando sono disponibili per un client di automazione interfaccia utente. Ad esempio, una casella di modifica a più righe consente lo scorrimento verticale solo quando contiene un numero di righe di testo superiore a quelle che rientrano nella relativa area visualizzabile. Lo scorrimento viene disabilitato quando viene rimossa una quantità di testo sufficiente per renderlo non più necessario. Per questo esempio, il pattern di controllo ScrollPattern è supportato dinamicamente a seconda dello stato corrente del controllo, ossia della quantità di testo inclusa nella casella di modifica.
Classi e interfacce dei pattern di controllo
Nella tabella seguente vengono descritti i pattern di controllo di UI Automation. Sono inoltre elencate le classi utilizzate dai client di automazione interfaccia utente per accedere ai pattern di controllo, nonché le interfacce utilizzate dai provider di automazione interfaccia utente per implementarli.
Classi di pattern di controllo |
Interfaccia provider |
Descrizione |
---|---|---|
Viene utilizzata per i controlli che possono essere ancorati in un contenitore di ancoraggio, ad esempio barre degli strumenti e caselle di strumenti. |
||
Viene utilizzata per i controlli che è possibile espandere o comprimere, ad esempio voci di menu in un'applicazione, come il menu File. |
||
Viene utilizzata per i controlli che supportano funzionalità di griglia come il ridimensionamento e lo spostamento in una cella specificata, ad esempio la visualizzazione di icone grandi in Esplora risorse o le tabelle semplici senza intestazioni in Microsoft Word. |
||
Viene utilizzata per i controlli che includono celle all'interno di griglie. Le singole celle devono supportare il pattern GridItem, ad esempio ogni cella nella visualizzazione dettagli di Microsoft Windows Explorer. |
||
Viene utilizzata per i controlli che è possibile richiamare, ad esempio un pulsante. |
||
Viene utilizzata per i controlli che possono passare tra più rappresentazioni dello stesso insieme di informazioni, dati o elementi figlio, ad esempio un controllo visualizzazione elenco in cui i dati sono disponibili nelle visualizzazioni anteprima, affiancata, icone, elenco o dettagli. |
||
Viene utilizzata per i controlli a cui è possibile applicare un intervallo di valori. Ad esempio, una casella di selezione contenente anni potrebbe avere un intervallo compreso tra 1900 e 2010, mentre un'altra contenente mesi un intervallo compreso tra 1 e 12. |
||
Viene utilizzata per i controlli che possono scorrere, ad esempio un controllo le cui barre di scorrimento sono attive quando la quantità di informazioni è superiore a quella che rientra nella relativa area visualizzabile. |
||
Viene utilizzata per i controlli che includono singoli elementi in un elenco di scorrimento, ad esempio un controllo elenco che include singoli elementi nell'elenco di scorrimento, quale una casella combinata. |
||
Viene utilizzata per i controlli contenitori di selezione, ad esempio caselle di riepilogo e caselle combinate. |
||
Viene utilizzata per i singoli elementi dei controlli contenitori di selezione, ad esempio caselle di riepilogo e caselle combinate. |
||
Viene utilizzata per i controlli che includono una griglia oltre a informazioni di intestazione, ad esempio i fogli di lavoro di Microsoft Excel. |
||
Viene utilizzata per gli elementi di una tabella. |
||
Viene utilizzata per i controlli di modifica e i documenti che espongono informazioni di testo. |
||
Viene utilizzata per i controlli il cui stato può essere attivato e disattivato, ad esempio caselle di controllo e voci di menu selezionabili. |
||
Viene utilizzata per i controlli che è possibile ridimensionare, spostare o ruotare. Il pattern di controllo Transform viene tipicamente utilizzato nelle finestre di progettazione, nei form, negli editor grafici e nelle applicazioni di disegno. |
||
Consente ai client di ottenere o impostare un valore sui controlli che non supportano un intervallo di valori, ad esempio un controllo per la selezione di data e ora. |
||
Espone informazioni specifiche per le finestre, un concetto fondamentale per il sistema operativo Microsoft Windows. Esempi di controlli che corrispondono a finestre sono le finestre di applicazioni di primo livello (Microsoft Word, Microsoft Windows Explorer e così via), le finestre figlio multiple-document interface (MDI) e le finestre di dialogo. |
Vedere anche
Concetti
Pattern di controllo di automazione interfaccia utente per i client
Mapping dei pattern di controllo per i client di automazione interfaccia utente
Cenni preliminari su automazione interfaccia utente