Prise en charge d’UI Automation pour le type de contrôle TreeItem

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 TreeItem. 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.

Le contrôle de type TreeItem représente un nœud dans un conteneur d’arborescence. Chaque nœud peut contenir d’autres nœuds, appelés nœuds enfants. Vous pouvez afficher les nœuds parents, ou nœuds qui contiennent des nœuds enfants, sous forme développée ou réduite.

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 TreeItem. Les exigences UI Automation s’appliquent à tous les contrôles d’élément d’arborescence, 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’élément d’arborescence. 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
TreeItem

- CheckBox (0 ou 1)
- Image (0 ou 1)
- Button (0 ou 1)
- TreeItem (0 ou plus)
TreeItem

- TreeItem (0 ou plus)

Les contrôles d’élément d’arborescence peuvent comporter zéro ou plusieurs enfants d’élément d’arborescence dans l’affichage du contenu de l’arborescence UI Automation. Si le contrôle d’élément d’arborescence a d’autres fonctionnalités que celles exposées dans les modèles de contrôle répertoriés ci-dessous, le contrôle doit être basé sur le type de contrôle DataItem.

Les éléments d’arborescence réduits n’apparaissent pas dans l’affichage de contrôle ou l’affichage du contenu tant qu’ils ne sont pas développés et visibles (ou tant qu’ils ne peuvent pas être l’objet d’un défilement).

L’affichage de contrôle peut contenir des détails supplémentaires pour un contrôle, notamment une image ou un bouton associé. Par exemple, un élément en mode Plan peut contenir une image, ainsi qu’un bouton pour développer ou réduire le plan. Ces objets de détail n’apparaissent pas dans l’affichage du contenu, car les informations sont déjà représentées par l’élément d’arborescence parent. Les éléments d’arborescence qui défilent au-delà de l’écran apparaissent dans les affichages de contrôle et du contenu de l’arborescence UI Automation. En outre, IsOffscreenProperty doit avoir la valeur true.

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 de liste. 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. Cette propriété doit retourner un emplacement de l’élément qui oblige ce dernier à changer d’état de sélection ou à prendre le focus.
ControlTypeProperty TreeItem Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
IsContentElementProperty True Le contrôle de liste est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
IsControlElementProperty True Le contrôle de liste est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
IsOffscreenProperty Consultez les remarques. Cette propriété est définie pour indiquer le moment où un contrôle d’élément d’arborescence défile au-delà de l’écran.
IsKeyboardFocusableProperty Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
ItemTypeProperty Consultez les remarques. Si le contrôle d’élément d’arborescence utilise une icône visuelle pour indiquer qu’il s’agit d’un type d’objet particulier, cette propriété doit être prise en charge et indiquer à quoi correspond l’objet.
LabeledByProperty Null Les contrôles d’élément d’arborescence créent eux-mêmes leurs étiquettes.
LocalizedControlTypeProperty "élément d’arborescence" Chaîne localisée correspondant au type de contrôle TreeItem.
NameProperty Consultez les remarques. Cette propriété expose le texte affiché pour chaque contrôle d’élément d’arborescence.

Modèles de contrôle UI Automation obligatoires

Le tableau suivant répertorie les modèles de contrôle UI Automation qui doivent être pris en charge par les contrôles de liste. 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 Prise en charge/valeur Notes
IInvokeProvider Dépend Implémentez ce modèle de contrôle si l’élément d’arborescence dispose d’une commande distincte pouvant être actionnée.
IExpandCollapseProvider Oui Tous les éléments d’arborescence peuvent être développés ou réduits.
ExpandCollapseState Nœud développé, réduit ou terminal Les éléments d’arborescence sont des nœuds terminaux quand ils ne sont pas développés ou réduits.
IScrollItemProvider Dépend Implémentez ce modèle de contrôle si le conteneur d’arborescence prend en charge le modèle de contrôle Scroll.
ISelectionItemProvider Dépend Implémentez ce modèle de contrôle s’il est possible de conserver une sélection active quand l’utilisateur retourne au conteneur d’arborescence.
SelectionContainer Oui Cette propriété expose le même conteneur pour tous les éléments du conteneur.
IToggleProvider Dépend Implémentez ce modèle de contrôle si une case à cocher est associée à l’élément d’arborescence.

É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’élément d’arborescence. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Support Notes
AutomationFocusChangedEvent Obligatoire None
Événement de modification de propriétéBoundingRectangleProperty Obligatoire None
Événement de modification de propriétéIsEnabledProperty Obligatoire None
Événement de modification de propriétéIsOffscreenProperty Obligatoire None
Événement de modification de propriétéItemStatusProperty Dépend None
Événement de modification de propriétéNameProperty Obligatoire None
StructureChangedEvent Obligatoire None
Événement de modification de propriétéExpandCollapseStateProperty Obligatoire Aucun
InvokedEvent Dépend None
Événement de modification de propriétéCurrentViewProperty Dépend Aucun
ElementAddedToSelectionEvent Dépend Aucun
ElementRemovedFromSelectionEvent Dépend Aucun
ElementSelectedEvent Dépend None
Événement de modification de propriétéToggleStateProperty Dépend None
Événement de modification de propriétéValueProperty Dépend None

Voir aussi