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

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 Tree. 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 type de contrôle Tree est utilisé pour les conteneurs dont le contenu est pertinent en tant que hiérarchie de nœuds, par exemple en matière d’affichage des fichiers et des dossiers dans le volet gauche de Microsoft Windows Explorer. 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 Tree. Les exigences UI Automation s’appliquent à tous les contrôles 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’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
Arborescence

  • DataItem (0 ou plus)
  • TreeItem (0 ou plus)

    • TreeItem (0 ou plus)• …
  • ScrollBar (0, 1, 2)
Arborescence

  • DataItem (0 ou plus)
  • TreeItem (0 ou plus)

    • TreeItem (0 ou plus)• …

L’affichage de contrôle de l’arborescence UI Automation comprend :

  • zéro ou plusieurs éléments dans le conteneur (les éléments peuvent être basés sur les types de contrôle TreeItem, DataItem ou autres) ;

  • zéro, une ou deux barres de défilement.

L’affichage du contenu de l’arborescence UI Automation comprend zéro ou plusieurs éléments dans le conteneur (les éléments peuvent être basés sur les types de contrôle TreeItem, DataItem ou autres).

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. Les contrôles d’arborescence ont un point interactif qui déclenche l’obtention du focus par l’arborescence ou l’un des éléments du conteneur d’arborescence. Vous obtenez un point interactif pour une arborescence uniquement si vous pouvez cliquer à un emplacement qui n’entraîne pas la sélection ou l’obtention du focus par l’un des éléments.
ControlTypeProperty Arborescence Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
IsContentElementProperty True Le contrôle d’arborescence est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
IsControlElementProperty True Le contrôle d’arborescence est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
IsKeyboardFocusableProperty Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
LabeledByProperty Consultez les remarques. Si une étiquette est associée au contrôle d’arborescence, cette propriété retourne AutomationElement pour cette étiquette. Sinon, la propriété retourne une référence null (Nothing dans Microsoft Visual Basic .NET).
LocalizedControlTypeProperty "arborescence" Chaîne localisée correspondant au type de contrôle List.
NameProperty Consultez les remarques. La valeur de propriété du nom d’un contrôle d’arborescence provient généralement du texte correspondant à l’étiquette du contrôle. En l’absence d’étiquette de texte, le développeur d’applications doit fournir une valeur pour cette propriété.

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
ISelectionProvider Dépend Les contrôles d’arborescence qui contiennent un ensemble d’éléments sélectionnables doivent implémenter ce modèle de contrôle. Ce modèle de contrôle n’a pas à être implémenté si la sélection d’un élément ne vise pas à transmettre des informations importantes à l’utilisateur.
CanSelectMultiple Consultez les remarques. Implémentez cette propriété si le contrôle d’arborescence prend en charge la sélection multiple (la plupart des contrôles d’arborescence ne prennent pas en charge la sélection multiple).
IsSelectionRequired Consultez les remarques. La valeur de cette propriété est exposée si le contrôle nécessite la sélection d’un élément.
IScrollProvider Dépend Implémentez ce modèle de contrôle si le contenu du conteneur d’arborescence peut faire l’objet d’un défilement.

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

Événement UI Automation Support Notes
InvalidatedEvent Dépend 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éHorizontallyScrollableProperty Dépend None
Événement de modification de propriétéHorizontalScrollPercentProperty Dépend None
Événement de modification de propriétéHorizontalViewSizeProperty Dépend None
Événement de modification de propriétéVerticalScrollPercentProperty Dépend None
Événement de modification de propriétéVerticallyScrollableProperty Dépend None
Événement de modification de propriétéVerticalViewSizeProperty Dépend None
AutomationFocusChangedEvent Obligatoire None
StructureChangedEvent Obligatoire None

Voir aussi