Partager via


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

Notes

Cette documentation s’adresse 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 dernières informations 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 Edit. Dans UI Automation, un type de contrôle est un ensemble de conditions qu’un contrôle doit respecter pour pouvoir utiliser la propriété ControlTypeProperty. Les conditions incluent des instructions spécifiques pour la structure d’arborescence, les valeurs de propriété et les modèles de contrôle UI Automation.

Les contrôles Edit permettent à un utilisateur d’afficher et modifier une simple ligne de texte sans une prise en charge évoluée de la mise en forme.

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 nécessaires pour le type de contrôle Edit. Les exigences UI Automation s’appliquent à tous les contrôles d’édition, que ce soit Windows Presentation Foundation (WPF), Win32 ou Windows Forms.

Arborescence UI Automation obligatoire

Le tableau suivant représente l’affichage de contrôle et l’affichage du contenu de l’arborescence UI Automation concernant les contrôles d’édition. En outre, il décrit ce que peut contenir chaque affichage. Pour plus d’informations sur l’arborescence UI Automation, consultez Vue d’ensemble de l’arborescence UI Automation.

Affichage de contrôle Affichage de contenu
Modifier Modifier

Les contrôles qui implémentent le type de contrôle Edit n’auront jamais de barre de défilement dans l’affichage de contrôle de l’arborescence UI Automation, car il s’agit d’un contrôle sur une seule ligne. Dans certains scénarios de disposition, la ligne de texte unique peut faire l’objet d’un retour automatique à la ligne. Le type de contrôle Edit est parfaitement adapté pour la maintenance de petites quantités de texte modifiable ou sélectionnable.

Propriétés UI Automation obligatoires

Le tableau suivant liste les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour les contrôles d’édition. 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 Notes
AutomationIdProperty Consultez les remarques. La valeur de cette propriété doit être unique dans tous les contrôles d’une application.
BoundingRectangleProperty Consultez les remarques. Rectangle externe qui contient l’ensemble du contrôle.
ClickablePointProperty Consultez les remarques. Le contrôle d’édition doit avoir un point interactif qui donne le focus d’entrée à la partie d’édition du contrôle quand un utilisateur clique dessus avec la souris.
IsKeyboardFocusableProperty Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
NameProperty Consultez les remarques. Le nom du contrôle d’édition est habituellement généré à partir d’une étiquette de texte statique. En l’absence d’une telle étiquette, le développeur de l’application doit assigner une valeur de propriété pour Name . La propriété Name ne doit jamais contenir le contenu textuel du contrôle d’édition.
LabeledByProperty Consultez les remarques. Si une étiquette de texte statique est associée au contrôle, cette propriété doit exposer une référence à ce contrôle. Si le contrôle de texte est le sous-composant d’un autre contrôle, il n’a pas de propriété LabeledBy définie.
ControlTypeProperty Modifier Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
LocalizedControlTypeProperty « édition » Chaîne localisée correspondant au type de contrôle Edit.
IsContentElementProperty True Le contrôle d’édition est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
IsControlElementProperty True Le contrôle d’édition est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
IsPasswordProperty Consultez les remarques. Cette propriété doit avoir la valeur true pour les contrôles d’édition qui contiennent des mots de passe. Si un contrôle d’édition contient du contenu de mot de passe, cette propriété peut être utilisée par un lecteur d’écran pour déterminer si les séquences de touches doivent être lues au moment où l’utilisateur les tape.

Modèles de contrôle et propriétés UI Automation requis

Le tableau suivant répertorie les modèles de contrôle qui doivent être pris en charge par tous les contrôles d’édition. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Modèle de contrôle / Propriété de modèle de contrôle Prise en charge/valeur Notes
ITextProvider Dépend Les contrôles d’édition doivent prendre en charge le modèle de contrôle Text parce que les informations de texte détaillées doivent toujours être disponibles pour les clients.
IValueProvider Dépend Tous les contrôles d’édition qui utilisent une chaîne doivent exposer le modèle Value.
IsReadOnly Consultez les remarques. Cette propriété doit être définie pour indiquer si le contrôle peut avoir une valeur définie par programmation ou peut être modifiée par l’utilisateur.
Value Consultez les remarques. Cette propriété retourne le contenu textuel du contrôle d’édition. Si la propriété IsPasswordProperty a la valeur true, elle doit déclencher une exception InvalidOperationException quand elle est demandée.
IRangeValueProvider Dépend Tous les contrôles d’édition qui utilisent une plage numérique doivent exposer le modèle de contrôle Range Value.
Minimum Consultez les remarques. Cette propriété doit représenter la plus petite valeur pouvant être affectée au contenu du contrôle d’édition.
Maximum Consultez les remarques. Cette propriété doit représenter la plus grande valeur pouvant être affectée au contenu du contrôle d’édition.
SmallChange Consultez les remarques. Cette propriété doit indiquer le nombre de décimales pouvant être défini pour la valeur. Si la modification accepte uniquement des entiers, SmallChangeProperty doit avoir la valeur 1. Si la modification accepte une plage entre 1.0 et 2.0, SmallChangeProperty doit avoir la valeur 0.1. Si le contrôle d’édition accepte une plage entre 1.00 et 2.00, SmallChangeProperty doit avoir la valeur 0.001.
LargeChange Null Cette propriété n’est pas tenue d’être exposée sur un contrôle d’édition.
Value Consultez les remarques. Cette propriété indique le contenu numérique du contrôle d’édition. Quand une valeur plus précise est définie par un client UI Automation dans les plages spécifiées dans les propriétés Minimum et Maximum, la propriété Value est automatiquement arrondie à la valeur acceptée la plus proche.

Événements UI Automation obligatoires

Le tableau suivant répertorie les événements UI Automation qui doivent être pris en charge par tous les contrôles d’édition. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Support Notes
InvalidatedEvent Obligatoire None
TextSelectionChangedEvent Obligatoire None
TextChangedEvent Obligatoire None
Événement de modification de propriétéBoundingRectangleProperty Obligatoire None
Événement de modification de propriétéIsOffscreenProperty Obligatoire None
Événement de modification de propriétéIsEnabledProperty Obligatoire None
Événement de modification de propriétéNameProperty Obligatoire None
Événement de modification de propriétéValueProperty Dépend None
Événement de modification de propriétéHorizontallyScrollableProperty Jamais None
Événement de modification de propriétéHorizontalScrollPercentProperty Jamais None
Événement de modification de propriétéHorizontalViewSizeProperty Jamais None
Événement de modification de propriétéVerticalScrollPercentProperty Jamais None
Événement de modification de propriétéVerticallyScrollableProperty Jamais None
Événement de modification de propriétéVerticalViewSizeProperty Jamais None
Événement de modification de propriétéValueProperty Dépend Si le contrôle prend en charge le modèle de contrôle Range Value, il doit prendre en charge cet événement.
AutomationFocusChangedEvent Obligatoire None
StructureChangedEvent Obligatoire None

Voir aussi