Share via


Modello di controllo selezione

Vengono descritte linee guida e convenzioni per l'implementazione di ISelectionProvider, incluse informazioni sulle proprietà, i metodi e gli eventi. Il modello di controllo Selezione viene usato per supportare i controlli che fungono da contenitori per una raccolta di elementi figlio selezionabili. Gli elementi figlio di questo elemento devono implementare ISelectionItemProvider.

Per esempi di controlli che implementano questo modello di controllo, vedere Tipi di controllo e modelli di controllo supportati.

In questo argomento sono contenute le sezioni seguenti.

Linee guida e convenzioni di implementazione

Quando si implementa il modello di controllo Selezione , prendere nota delle linee guida e delle convenzioni seguenti:

  • I controlli che implementano ISelectionProvider consentono di selezionare elementi singoli o figlio multipli. Ad esempio, le caselle di riepilogo, le visualizzazioni elenco e le visualizzazioni albero supportano più selezioni, mentre le caselle combinate, i dispositivi di scorrimento e i gruppi di pulsanti di opzione supportano la selezione singola.

  • I controlli che hanno un intervallo minimo, massimo e continuo, ad esempio il controllo Dispositivo di scorrimento volume di un lettore multimediale, devono implementare IRangeValueProvider anziché ISelectionProvider.

  • Controlli a selezione singola che gestiscono i controlli figlio che implementano IRawElementProviderFragmentRoot, ad esempio il dispositivo di scorrimento Risoluzione dello schermo nella finestra di dialogo Proprietà visualizzate per Windows o il controllo selezione colori da Microsoft Word (vedere l'immagine seguente), devono implementare ISelectionProvider. I Loro figli devono implementare sia IRawElementProviderFragment cheISelectionItemProvider.

    immagine che mostra un esempio di mapping di stringhe di colore

  • I menu non supportano il modello di controllo Selezione . Se si utilizzano voci di menu che includono sia grafica che testo (ad esempio, le voci del riquadro di anteprima nel menu Visualizza in Microsoft Outlook) e devono trasmettere lo stato, è necessario implementare IToggleProvider.

Membri obbligatori per ISelectionProvider

Per implementare l'interfaccia ISelectionProvider sono necessarie le proprietà, i metodi e gli eventi seguenti.

Membri obbligatori Tipo di membro Note
CanSelectMultiple Proprietà Nessuno
IsSelectionRequired Proprietà Nessuno
GetSelection Metodo Nessuno
UIA_Selection_InvalidatedEventId Evento Generare questo evento quando una selezione in un contenitore è cambiata in modo significativo.

 

Le proprietà ISelectionProvider::IsSelectionRequired e CanSelectMultiple possono essere dinamiche. Ad esempio, lo stato iniziale di un controllo potrebbe non avere elementi selezionati per impostazione predefinita, che indica che IsSelectionRequired è false. Tuttavia, dopo aver selezionato un elemento, il controllo deve sempre avere almeno un elemento selezionato. Analogamente, in casi rari, un controllo potrebbe consentire la selezione di più elementi durante l'inizializzazione e successivamente consentire solo selezioni singole.

Tipi di controllo e modelli di controllo supportati

Modello di controllo SelectionItem

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

Panoramica dell'albero di automazione dell'interfaccia utente