Partager via


Vue d'ensemble des propriétés UI Automation

RemarqueRemarque

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)

AutomationElement

AutomationElementIdentifiers

Position d'une fenêtre d'ancrage

DockPattern

DockPatternIdentifiers

État d'un élément qui peut être développé et réduit

ExpandCollapsePattern

ExpandCollapsePatternIdentifiers

Propriétés d'un élément dans une grille

GridItemPattern

GridItemPatternIdentifiers

Propriétés d'une grille

GridPattern

GridPatternIdentifiers

Affichage actuel pris en charge d'un élément qui dispose de plusieurs affichages

MultipleViewPattern

MultipleViewPatternIdentifiers

Propriétés d'un élément qui se déplace sur une plage de valeurs, comme un curseur

RangeValuePattern

RangeValuePatternIdentifiers

Propriétés d'une fenêtre de défilement

ScrollPattern

ScrollPatternIdentifiers

État et conteneur d'un élément qui peut être sélectionné, comme dans une liste

SelectionItemPattern

SelectionItemPatternIdentifiers

Propriétés d'un contrôle qui contient des éléments de sélection

SelectionPattern

SelectionPatternIdentifiers

En-têtes de colonnes et de lignes d'un élément dans un tableau

TableItemPattern

TableItemPatternIdentifiers

En-têtes de colonnes et de lignes et orientation d'un tableau

TablePattern

TablePatternIdentifiers

État d'un contrôle de basculement

TogglePattern

TogglePatternIdentifiers

Fonctions d'un élément qui peut être déplacé, pivoté ou redimensionné

TransformPattern

TransformPatternIdentifiers

Valeur et fonctions de lecture/écriture d'un élément qui possède une valeur

ValuePattern

ValuePatternIdentifiers

Fonctions et état d'une fenêtre

WindowPattern

WindowPatternIdentifiers

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.

RemarqueRemarque

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é

BoundingRectangleProperty

BoundingRectangle

CultureProperty

N/A

HelpTextProperty

HelpText

IsOffscreenProperty

IsOffscreen

OrientationProperty

Orientation

Type d'élément

Identificateur de propriété

Accès à la propriété

ControlTypeProperty

ControlType

IsContentElementProperty

IsContentElement

IsControlElementProperty

IsControlElement

ItemTypeProperty

ItemType

LocalizedControlTypeProperty

LocalizedControlType

Identification

Identificateur de propriété

Accès à la propriété

AutomationIdProperty

AutomationId

ClassNameProperty

ClassName

FrameworkIdProperty

FrameworkId

LabeledByProperty

LabeledBy

NameProperty

Name

ProcessIdProperty

ProcessId

RuntimeIdProperty

GetRuntimeId

NativeWindowHandleProperty

NativeWindowHandle

Interaction

Identificateur de propriété

Accès à la propriété

AcceleratorKeyProperty

AcceleratorKey

AccessKeyProperty

AccessKey

ClickablePointProperty

GetClickablePoint

HasKeyboardFocusProperty

HasKeyboardFocus

IsEnabledProperty

IsEnabled

IsKeyboardFocusableProperty

IsKeyboardFocusable

Prise en charge pour les modèles

Identificateur de propriété

Accès à la propriété

IsDockPatternAvailableProperty

GetSupportedPatterns

IsExpandCollapsePatternAvailableProperty

GetSupportedPatterns

IsGridItemPatternAvailableProperty

GetSupportedPatterns

IsGridPatternAvailableProperty

GetSupportedPatterns

IsInvokePatternAvailableProperty

GetSupportedPatterns

IsMultipleViewPatternAvailableProperty

GetSupportedPatterns

IsRangeValuePatternAvailableProperty

GetSupportedPatterns

IsScrollItemPatternAvailableProperty

GetSupportedPatterns

IsScrollPatternAvailableProperty

GetSupportedPatterns

IsSelectionItemPatternAvailableProperty

GetSupportedPatterns

IsSelectionPatternAvailableProperty

GetSupportedPatterns

IsTableItemPatternAvailableProperty

GetSupportedPatterns

IsTablePatternAvailableProperty

GetSupportedPatterns

IsTextPatternAvailableProperty

GetSupportedPatterns

IsTogglePatternAvailableProperty

GetSupportedPatterns

IsTransformPatternAvailableProperty

GetSupportedPatterns

IsValuePatternAvailableProperty

GetSupportedPatterns

IsWindowPatternAvailableProperty

GetSupportedPatterns

Divers

Identificateur de propriété

Accès à la propriété

IsRequiredForFormProperty

IsRequiredForForm

IsPasswordProperty

IsPassword

ItemStatusProperty

ItemStatus

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

Propriétés UI Automation pour les clients

Implémentation de fournisseur UI Automation côté serveur