Vue d'ensemble des propriétés UI Automation
Remarque |
---|
Cette documentation s'adresse aux développeurs .NET Framework qui veulent utiliser les classes UI Automation managées définies dans l'espace de noms System.Windows.Automation.Pour obtenir les informations les plus récentes sur UI Automation, consultez API Windows Automation : UI Automation (page éventuellement en anglais). |
Les fournisseurs UI Automation exposent des propriétés sur les éléments Microsoft UI Automation. Ces propriétés permettent aux applications du client UI Automation de découvrir des informations sur des parties de l'user interface (UI), en particulier les contrôles, ainsi que des données statiques et dynamiques.
Cette rubrique comprend les sections suivantes.
- Identificateurs de propriété
- Propriétés par catégorie
- Localisation
- Propriétés et événements
- Rubriques connexes
Cette section offre une vue générale des propriétés Microsoft UI Automation. Des informations plus spécifiques sont données dans les rubriques suivantes :
Identificateurs de propriété
Chaque propriété est identifiée par un nombre et un nom. Les noms des propriétés sont uniquement utilisés pour le débogage et le diagnostic. Les fournisseurs utilisent des IDs numériques pour identifier les requêtes de propriété entrantes. Toutefois, les applications clientes n'utilisent que AutomationProperty, qui encapsule le nombre et le nom, pour identifier les propriétés qu'elles souhaitent récupérer.
Les objets AutomationProperty représentant des propriétés particulières sont disponibles en tant que champs dans différentes classes. Pour des raisons de sécurité, les fournisseurs UI Automation obtiennent ces objets par un ensemble de classes séparé, contenu dans Uiautomationtypes.dll.
Le tableau suivant catégorise les propriétés selon les classes qui contiennent les IDs AutomationProperty.
Types de propriétés |
Les clients obtiennent les ID via |
Les fournisseurs obtiennent les ID via |
---|---|---|
Propriétés communes à tous les éléments (consultez les tableaux suivants) |
||
Position d'une fenêtre d'ancrage |
||
État d'un élément qui peut être développé et réduit |
||
Propriétés d'un élément dans une grille |
||
Propriétés d'une grille |
||
Affichage actuel pris en charge d'un élément qui dispose de plusieurs affichages |
||
Propriétés d'un élément qui se déplace sur une plage de valeurs, comme un curseur |
||
Propriétés d'une fenêtre de défilement |
||
État et conteneur d'un élément qui peut être sélectionné, comme dans une liste |
||
Propriétés d'un contrôle qui contient des éléments de sélection |
||
En-têtes de colonnes et de lignes d'un élément dans un tableau |
||
En-têtes de colonnes et de lignes et orientation d'un tableau |
||
État d'un contrôle de basculement |
||
Fonctions d'un élément qui peut être déplacé, pivoté ou redimensionné |
||
Valeur et fonctions de lecture/écriture d'un élément qui possède une valeur |
||
Fonctions et état d'une fenêtre |
Propriétés par catégorie
Les tableaux suivants catégorisent les propriétés dont les IDs se trouvent dans AutomationElement et AutomationElementIdentifiers. Ces propriétés sont communes à tous les contrôles. Toutefois, certaines de ces propriétés sont susceptibles d'être statiques pendant toute la durée de vie de l'application fournisseur ; les propriétés les plus dynamiques sont associées à des modèles de contrôle.
La colonne Accès à la propriété liste tous les autres accesseurs pour chaque propriété, en plus de GetCurrentPropertyValue et GetCachedPropertyValue. Pour plus d'informations sur la façon d'obtenir des propriétés dans une application cliente, consultez Propriétés UI Automation pour les clients.
Remarque |
---|
Pour des informations plus spécifiques sur chaque propriété, suivez le lien dans la colonne Accès à la propriété. |
Caractéristiques d'affichage
Identificateur de propriété |
Accès à la propriété |
---|---|
N/A |
|
Type d'élément
Identificateur de propriété |
Accès à la propriété |
---|---|
Identification
Identificateur de propriété |
Accès à la propriété |
---|---|
Interaction
Identificateur de propriété |
Accès à la propriété |
---|---|
Prise en charge pour les modèles
Identificateur de propriété |
Accès à la propriété |
---|---|
Divers
Identificateur de propriété |
Accès à la propriété |
---|---|
Localisation
Les fournisseurs UI Automation doivent présenter les propriétés suivantes dans le langage du système d'exploitation :
Propriétés et événements
Le concept d'événements de modification de propriété est étroitement lié aux propriétés d'UI Automation. Pour les propriétés dynamiques, l'application cliente requiert une façon de savoir si la valeur d'une propriété a été modifiée afin de pouvoir mettre à jour son cache d'informations ou réagir face aux nouvelles informations selon la situation.
Les fournisseurs déclenchent des événements lorsqu'une modification est apportée à l'UI. Par exemple, si une case à cocher est activée ou désactivée, un événement de modification de propriété est déclenché par l'implémentation du modèle Toggle du fournisseur. Les fournisseurs peuvent déclencher des événements de manière sélective, selon que des clients écoutent tous les événements ou des événements spécifiques.
Les modifications de propriétés ne déclenchent pas toutes des événements ; cela dépend entièrement de l'implémentation du fournisseur UI Automation pour l'élément. Par exemple, les fournisseurs de proxys standard pour les zones de liste ne déclenchent pas d'événement lorsque SelectionProperty est modifié. Dans ce cas, l'application doit plutôt écouter un ElementSelectedEvent.
Les clients écoutent des événements en s'y abonnant. S'abonner à des événements revient à créer des méthodes déléguées qui peuvent gérer les événements, puis passer les méthodes à UI Automation avec les événements spécifiques qui seront traités dans ces méthodes. Pour les événements de modification de propriété, les clients doivent implémenter AutomationPropertyChangedEventHandler.
Voir aussi
Tâches
Rechercher un élément UI Automation basé sur une condition de propriété
Retourner les propriétés d'un fournisseur UI Automation
Déclencher des événements à partir d'un fournisseur UI Automation
Concepts
Mise en cache dans les clients UI Automation