Cenni preliminari su automazione interfaccia utente

Aggiornamento: novembre 2007

automazione interfaccia utente Microsoft è il nuovo framework di accessibilità per Microsoft Windows, disponibile su tutti i sistemi operativi che supportano Windows Presentation Foundation (WPF).

automazione interfaccia utente fornisce accesso a livello di codice alla maggior parte degli elementi dell'interfaccia utente sul desktop, consentendo a prodotti di Assistive Technology, quali le utilità per la lettura, di fornire informazioni sull'interfaccia utente agli utenti finali e di modificare l'interfaccia utente con mezzi diversi dall'input standard. automazione interfaccia utente consente inoltre l'interazione degli script di test automatizzati con l'interfaccia utente.

Nota:

automazione interfaccia utente non abilita la comunicazione tra processi avviati da utenti diversi tramite il comando Esegui come.

Le applicazioni client di automazione interfaccia utente possono essere scritte con la certezza che funzioneranno su più framework. Le funzionalità di base di automazione interfaccia utente mascherano le eventuali differenze nei framework sottostanti le varie parti dell'interfaccia utente. Ad esempio, la proprietà Content di un pulsante di WPF, la proprietà Caption di un pulsante di Win32 e la proprietà ALT di un'immagine HTML sono tutte mappate a un'unica proprietà, Name, nella visualizzazione di automazione interfaccia utente.

automazione interfaccia utente fornisce tutte le funzionalità in Windows Vista, Microsoft Windows XP e Windows Server 2003.

I provider di automazione interfaccia utente offrono supporto per le applicazioni client di Microsoft Active Accessibility, tramite un servizio di bridging incorporato.

Nel presente argomento sono contenute le seguenti sezioni.

  • Provider e client
  • Modello di automazione interfaccia utente
  • Argomenti correlati

Provider e client

In automazione interfaccia utente sono presenti quattro componenti principali, come illustrato nella tabella riportata di seguito.

Componente

Descrizione

API di provider (UIAutomationProvider.dll and UIAutomationTypes.dll)

Un insieme di definizioni dell'interfaccia implementate dai provider di automazione interfaccia utente, oggetti che forniscono informazioni sugli elementi dell'interfaccia utente e rispondono a input a livello di codice.

Client API (UIAutomationClient.dll e UIAutomationTypes.dll)

Un insieme di tipi per il codice gestito che consente alle applicazioni client di automazione interfaccia utente di ottenere informazioni sull'interfaccia utentee inviare input ai controlli.

UiAutomationCore.dll

Il codice sottostante (talvolta denominato core di automazione interfaccia utente) che gestisce la comunicazione tra provider e client.

UIAutomationClientsideProviders.dll

Un insieme di provider di automazione interfaccia utente per i controlli standard legacy. ((i controlli WPF dispongono di supporto nativo per automazione interfaccia utente). Questo supporto è automaticamente disponibile per le applicazioni client.

Per uno sviluppatore software, esistono due modalità di utilizzo di automazione interfaccia utente: creare supporto per i controlli personalizzati (utilizzando l'API del provider) e creare applicazioni che utilizzano il core di automazione interfaccia utente per comunicare con gli elementi dell'interfaccia utente (utilizzando l'API client). In base allo stato attivo, è necessario fare riferimento a parti diverse della documentazione. Per ulteriori informazioni sui concetti e per istruzioni pratiche sulle procedure, vedere le sezioni seguenti.

Sezione

Argomento

Destinatari

Nozioni fondamentali sull'automazione interfaccia utente (questa sezione)

Cenni preliminari generici sui concetti.

Tutti.

Provider di automazione interfaccia utente per il codice gestito

Cenni preliminari e argomenti sulle procedure per consentire l'utilizzo dell'API del provider.

Sviluppatori dei controlli.

Client di automazione interfaccia utente per il codice gestito

Cenni preliminari e argomenti sulle procedure per l'utilizzo dell'API client.

Sviluppatori di applicazioni client.

Pattern di controllo per automazione interfaccia utente

Informazioni sulla modalità di implementazione dei pattern di controllo da parte dei provider e sulle funzionalità disponibili ai client.

Tutti.

Pattern di testo per l'automazione interfaccia utente

Informazioni sulla modalità di implementazione del pattern di controllo Text da parte dei provider e sulle funzionalità disponibili ai client.

Tutti.

Tipi di controllo per l'automazione dell'interfaccia utente

Informazioni sulle proprietà e sui pattern di controllo supportati da diversi tipi di controllo.

Tutti.

Nella tabella riportata di seguito vengono elencati gli spazi dei nomi di automazione interfaccia utente, le DLL che li contengono e i destinatari che le utilizzano.

Spazio dei nomi

DLL a cui si fa riferimento

Destinatari

System.Windows.Automation

UIAutomationClientUIAutomationTypes

Sviluppatori di client di automazione interfaccia utente; utilizzato per cercare oggetti AutomationElement, registrare eventi di automazione interfaccia utente e utilizzare i pattern di controllo di automazione interfaccia utente.

System.Windows.Automation.Provider

UIAutomationProviderUIAutomationTypes

Sviluppatori di provider di automazione interfaccia utente per i framework diversi da WPF.

System.Windows.Automation.Text

UIAutomationClientUIAutomationTypes

Sviluppatori di provider di automazione interfaccia utente per framework diversi da WPF; utilizzato per implementare il pattern di controllo TextPattern.

System.Windows.Automation.Peers

PresentationFramework

Sviluppatori di provider di automazione interfaccia utente per WPF.

Modello di automazione interfaccia utente

automazione interfaccia utente espone tutte le parti dell'interfaccia utente alle applicazioni client come AutomationElement. Gli elementi sono contenuti in una struttura ad albero, con il desktop come elemento radice. I client possono filtrare la visualizzazione non elaborata della struttura ad albero come visualizzazione controlli o visualizzazione contenuto. Queste visualizzazioni standard della struttura possono essere visualizzate facilmente utilizzando l'applicazione UI Spy inclusa con Software Development Kit (SDK). Le applicazioni possono anche creare visualizzazioni personalizzate.

Gli oggetti AutomationElement espongono proprietà comuni degli elementi di interfaccia utente che rappresentano. Una di queste proprietà è il tipo di controllo, che definisce l'aspetto e le funzionalità di base come singola entità riconoscibile, ad esempio un pulsante o una casella di controllo.

Inoltre, gli elementi espongono pattern di controllo che forniscono proprietà specifiche per i tipi di controllo. I pattern di controllo espongono anche metodi che consentono ai client di ottenere ulteriori informazioni sull'elemento e fornire input.

Nota:

Non esiste una corrispondenza uno-a-uno tra tipi di controllo e pattern di controllo. Un pattern di controllo può essere supportato da più tipi di controllo e un controllo può supportare più pattern di controllo, ognuno dei quali espone aspetti diversi del comportamento. Ad esempio, una casella combinata dispone di almeno due pattern di controllo: uno che rappresenta la possibilità di espansione e compressione e un altro che rappresenta il meccanismo di selezione. Per informazioni dettagliate, vedere Tipi di controllo per l'automazione dell'interfaccia utente.

automazione interfaccia utente fornisce anche informazioni alle applicazioni client tramite gli eventi. A differenza di WinEvents, gli eventi di automazione interfaccia utente non sono basati su un meccanismo di trasmissione. I client di automazione interfaccia utente si registrano per le notifiche di eventi specifici e possono richiedere che nei propri gestori eventi siano passate informazioni sulle proprietà e sui pattern di controllo specifici di automazione interfaccia utente. Inoltre, un evento di automazione interfaccia utente contiene un riferimento all'elemento che lo ha generato. I provider possono migliorare le prestazioni generando eventi in modo selettivo, a seconda che vi siano client in ascolto o meno.

Vedere anche

Concetti

Cenni preliminari sulla struttura di automazione dell'interfaccia utente

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

Cenni preliminari sulle proprietà di automazione interfaccia utente

Cenni preliminari sugli eventi di automazione interfaccia utente

Cenni preliminari sulla sicurezza di automazione interfaccia utente