Implementazione del pattern di controllo SelectionItem di automazione interfaccia utente
Nota
Questa documentazione è destinata agli sviluppatori .NET Framework che desiderano utilizzare le classi di UI Automation gestite definite nello spazio dei nomi System.Windows.Automation. Per informazioni aggiornate su UI Automation, vedere API di automazione di Windows: UI Automation.
In questo argomento vengono presentate le linee guida e le convenzioni per l'implementazione di ISelectionItemProvider, incluse le informazioni relative a proprietà, metodi ed eventi. Alla fine della panoramica sono elencati collegamenti a ulteriore materiale di riferimento.
Il pattern di controllo SelectionItemPattern viene usato per supportare i controlli che fungono da singoli elementi figlio selezionabili dei controlli contenitore che implementano ISelectionProvider. Per esempi di controlli che implementano il pattern di controllo SelectionItem, vedere Control Pattern Mapping for UI Automation Clients
Linee guida e convenzioni di implementazione
Quando si implementa il pattern di controllo SelectionItem, tenere presenti le linee guida e le convenzioni seguenti:
- I controlli a selezione singola che gestiscono i controlli figlio che implementano IRawElementProviderFragmentRoot, ad esempio il dispositivo di scorrimento Risoluzione schermo nella finestra di dialogo Proprietà di visualizzazione devono implementare ISelectionProvider e i relativi elementi figlio devono implementare IRawElementProviderFragment e ISelectionItemProvider.
Membri obbligatori per ISelectionItemProvider
Le proprietà, i metodi e gli eventi seguenti sono obbligatori per l'implementazione di ISelectionItemProvider.
Membri obbligatori | Tipo di membro | Note |
---|---|---|
CanSelectMultiple | Proprietà | None |
IsSelectionRequired | Proprietà | None |
GetSelection | metodo | None |
InvalidatedEvent | Event | Generato quando una selezione in un contenitore ha subito modifiche significative e richiede l'invio di un numero di eventi ElementSelectedEvent e ElementRemovedFromSelectionEvent rispetto a quanto definito mediante la costante InvalidateLimit . |
- Se il risultato di un Select, AddToSelectiono un RemoveFromSelection è un singolo elemento selezionato, è necessario generare ElementSelectedEvent . In caso contrario inviare ElementAddedToSelectionEvent/ ElementRemovedFromSelectionEvent a seconda dei casi.
Eccezioni
I provider devono generare le eccezioni seguenti.
Tipo di eccezione | Condizione |
---|---|
InvalidOperationException | Quando vengono tentate le seguenti operazioni: - RemoveFromSelection viene chiamato in un contenitore a selezione singola dove IsSelectionRequiredProperty = true e un elemento è già selezionato.- RemoveFromSelection viene chiamato in un contenitore a selezione multipla dove IsSelectionRequiredProperty = true ed è selezionato solo un elemento.- AddToSelection viene chiamato in un contenitore a selezione singola dove CanSelectMultipleProperty = false e un altro elemento è già selezionato. |
Vedi anche
- Panoramica dei pattern di controllo per l'automazione interfaccia utente
- Supportare pattern di controllo in un provider di automazione interfaccia utente
- Pattern di controllo di automazione interfaccia utente per i client
- Implementazione del pattern di controllo Selection di automazione interfaccia utente
- Panoramica dell'albero di automazione interfaccia utente
- Usare la memorizzazione nella cache in automazione interfaccia utente
- Esempio di provider di frammenti