Partager via


Prise en charge d'UI Automation pour le type de contrôle Button

Remarque

Cette documentation est destinée aux développeurs .NET Framework qui souhaitent 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.

Cette rubrique fournit des informations sur la prise en charge d’UI Automation pour le type de contrôle Button. Dans UI Automation, un type de contrôle est un ensemble de conditions qu’un contrôle doit respecter pour utiliser la ControlTypeProperty propriété. Les conditions incluent des instructions spécifiques pour la structure d’arborescence UI Automation, les valeurs des propriétés UI Automation, les modèles de contrôle et les événements UI Automation.

Un bouton est un objet avec lequel un utilisateur interagit pour effectuer une action telle que les boutons OK et Annuler dans une boîte de dialogue. Le contrôle bouton est un contrôle simple à exposer, car il est mappé à une seule commande que l’utilisateur souhaite terminer.

Les sections suivantes définissent la structure d’arborescence, les propriétés, les modèles de contrôle et les événements UI Automation requis pour le type de contrôle Button. Les exigences UI Automation s’appliquent à tous les contrôles de bouton, que Windows Presentation Foundation (WPF), Win32 ou Windows Forms.

Arborescence UI Automation obligatoire

Le tableau suivant illustre l’affichage de contrôle et l’affichage de contenu de l’arborescence UI Automation qui se rapporte aux contrôles de bouton et décrit ce qui peut être contenu dans chaque vue. Pour plus d’informations sur l’arborescence UI Automation, consultez vue d’ensemble de l’arborescence UI Automation.

Vue contrôle Affichage de contenu
Bouton

- Image (0 ou plus)
- Texte (0 ou plus)
Bouton

Propriétés UI Automation obligatoires

Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour les contrôles qui implémentent le type de contrôle Button (par exemple, les contrôles de bouton). Pour plus d’informations sur les propriétés UI Automation, consultez Propriétés UI Automation pour les clients.

Propriété UI Automation Valeur Remarques
AcceleratorKeyProperty Consultez les notes. Le contrôle de bouton doit généralement prendre en charge une touche d'accélérateur pour permettre à l'utilisateur d'effectuer rapidement l'action qu'il représente depuis le clavier.
AutomationIdProperty Consultez les notes. La valeur de cette propriété doit être unique sur tous les contrôles d’une application.
BoundingRectangleProperty Consultez les notes. Rectangle le plus externe qui contient l’ensemble du contrôle.
ClickablePointProperty Consultez les notes. Prise en charge s’il existe un rectangle englobant. Si les points du rectangle englobant ne sont pas tous interactifs et que vous effectuez un test de positionnement spécialisé, vous devez remplacer et fournir un point interactif.
ControlTypeProperty Bouton Cette valeur est la même pour toutes les infrastructures d’interface utilisateur.
HelpTextProperty Consultez les notes. Le texte d’aide peut indiquer le résultat final de l’activation du bouton. Il s’agit généralement du même type d’information qui est présenté via une info-bulle.
IsContentElementProperty Vrai Le contrôle Button doit toujours être du contenu.
IsControlElementProperty Vrai Le contrôle Button doit toujours être un contrôle.
IsKeyboardFocusableProperty Consultez les notes. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
LabeledByProperty Null Les contrôles de bouton sont auto-étiquetés par leur contenu.
LocalizedControlTypeProperty « bouton » Chaîne localisée correspondant au type de contrôle Button.
NameProperty Consultez les notes. Le nom du contrôle bouton est le texte utilisé pour l’étiqueter. Chaque fois qu’une image est utilisée pour étiqueter un bouton, un autre texte doit être fourni pour la propriété Name du bouton.

Modèles de contrôle UI Automation obligatoires

Le tableau suivant répertorie les modèles de contrôle UI Automation requis pour être pris en charge par tous les contrôles de bouton. Pour plus d’informations sur les modèles de contrôle, consultez Vue d’ensemble des modèles de contrôle UI Automation.

Modèle de contrôle Soutien Remarques
IInvokeProvider Consultez les notes. Tous les boutons doivent prendre en charge le modèle de contrôle Invoke ou le modèle de contrôle Toggle. L'invocation est prise en charge lorsque le bouton exécute une commande sur demande de l'utilisateur. Cette commande est mappée à une seule opération telle que Couper, Copier, Coller ou Supprimer.
IToggleProvider Consultez les notes. Tous les boutons doivent prendre en charge le modèle de contrôle Invoke ou le modèle de contrôle Toggle. Toggle est pris en charge si le bouton peut passer par une série de trois états, au maximum. En règle générale, il s’agit d’un commutateur activé/désactivé pour des fonctionnalités spécifiques.
IExpandCollapseProvider Consultez les notes. Lorsqu’un bouton est hébergé en tant qu’enfant d’un bouton fractionné, le bouton enfant peut prendre en charge le modèle ExpandCollapse au lieu du modèle Invoke ou Toggle. Le modèle ExpandCollapse peut être utilisé pour ouvrir ou fermer un menu ou une autre sous-structure associée à l’élément bouton.

Événements UI Automation obligatoires

Le tableau suivant répertorie les événements UI Automation requis pour être pris en charge par tous les contrôles de bouton. Pour plus d’informations sur les événements, consultez vue d’ensemble des événements UI Automation.

Événement UI Automation Soutien Remarques
AutomationFocusChangedEvent Obligatoire Aucun
Événement de modification de la propriété BoundingRectangleProperty. Obligatoire Aucun
Événement de modification de la propriété IsOffscreenProperty. Obligatoire Aucun
Événement de modification de la propriété IsEnabledProperty. Obligatoire Aucun
Événement de modification de la propriété NameProperty. Obligatoire Aucun
StructureChangedEvent Obligatoire Aucun
InvokedEvent Dépend Si le contrôle prend en charge le modèle de contrôle Invoke, il doit prendre en charge cet événement.
Événement de modification de la propriété ToggleStateProperty. Dépend Si le contrôle prend en charge le modèle de contrôle Toggle, il doit prendre en charge cet événement.

Voir aussi