Implementazione del pattern di controllo Scroll di automazione interfaccia utente
![]() |
---|
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 vengono presentate linee guida e convenzioni per l'implementazione dell'oggetto IScrollProvider, incluse informazioni su eventi e proprietà. Alla fine dell'argomento sono elencati i collegamenti a ulteriori riferimenti.
Il pattern di controllo ScrollPattern viene utilizzato per supportare un controllo che agisce da contenitore scorrevole per un insieme di oggetti figlio. Anche se normalmente il controllo utilizza le barre di scorrimento per supportare la funzionalità di scorrimento, questa operazione non è necessaria.
Esempio di controllo di scorrimento che non utilizza le barre di scorrimento
Per alcuni esempi di controlli che implementano questo controllo, vedere Mapping dei pattern di controllo per i client di automazione interfaccia utente.
Nel presente argomento sono contenute le seguenti sezioni.
- Linee guida e convenzioni per l'implementazione
- Membri obbligatori per IScrollProvider
- Eccezioni
- Argomenti correlati
Linee guida e convenzioni per l'implementazione
Quando si implementa il pattern di controllo Scroll, tenere presenti le linee guida e le convenzioni seguenti:
Gli elementi figlio di questo controllo devono implementare IScrollItemProvider.
Le barre di scorrimento di un controllo contenitore non supportano il pattern di controllo ScrollPattern. Devono supportare invece il pattern di controllo RangeValuePattern.
Quando lo scorrimento è misurato in percentuali, tutti i valori o quantità correlati alla scala di scorrimento devono essere normalizzati su un intervallo compreso tra 0 e 100.
HorizontallyScrollableProperty e VerticallyScrollableProperty sono indipendenti da IsEnabledProperty.
Se HorizontallyScrollableProperty = false, allora HorizontalViewSizeProperty deve essere impostato su 100% e HorizontalScrollPercentProperty su NoScroll. Analogamente, se VerticallyScrollableProperty = false, allora VerticalViewSizeProperty deve essere impostato su 100% e VerticalScrollPercentProperty su NoScroll. In questo modo un client di automazione interfaccia utente può utilizzare questi valori di proprietà all'interno del metodo SetScrollPercent evitando allo stesso tempo una race condition se viene attivata una direzione di scorrimento a cui il client non è interessato.
La proprietà HorizontalScrollPercent è specifica delle impostazioni locali. L'impostazione HorizontalScrollPercent = 100,0 deve impostare la posizione di scorrimento del controllo sull'equivalente della posizione all'estrema destra per le lingue come l'italiano che si leggono da sinistra a destra. In alternativa, per le lingue come l'arabo che si leggono da destra a sinistra l'impostazione HorizontalScrollPercent = 100,0 deve impostare la posizione di scorrimento sulla posizione all'estrema sinistra.
Membri obbligatori per IScrollProvider
Le proprietà e i metodi seguenti sono obbligatori per l'implementazione di IScrollProvider.
Membro obbligatorio |
Tipo di membro |
Note |
---|---|---|
Proprietà |
Nessuno |
|
Proprietà |
Nessuno |
|
Proprietà |
Nessuno |
|
Proprietà |
Nessuno |
|
Proprietà |
Nessuno |
|
Proprietà |
Nessuno |
|
Metodo |
Nessuno |
|
Metodo |
Nessuno |
A questo pattern di controllo non sono associati eventi.
Eccezioni
I provider devono generare le eccezioni seguenti.
Tipo di eccezione |
Condizione |
---|---|
Scroll genera questa eccezione se un controllo supporta i valori SmallIncrement esclusivamente per lo scorrimento orizzontale o verticale, ma viene passato un valore LargeIncrement. |
|
SetScrollPercent genera questa eccezione quando viene passato un valore che non può essere convertito in double. |
|
SetScrollPercent genera questa eccezione quando viene passato un valore maggiore di 100 o minore di 0 (ad eccezione di -1, che è equivalente a NoScroll). |
|
Scroll e SetScrollPercent generano questa eccezione quando viene effettuato un tentativo di scorrimento in una direzione non supportata. |
Vedere anche
Attività
Supportare pattern di controllo in un provider di automazione interfaccia utente
Utilizzare la memorizzazione nella cache per l'automazione interfaccia utente
Concetti
Cenni preliminari sui pattern di controllo per l'automazione interfaccia utente
Pattern di controllo di automazione interfaccia utente per i client
Cenni preliminari sulla struttura ad albero di automazione dell'interfaccia utente