Partager via


Type de contrôle d’arborescence

Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle tree.

L’arborescence type de contrôle est utilisé pour les conteneurs dont le contenu a une pertinence en tant que hiérarchie de nœuds, comme la façon dont les fichiers et dossiers sont affichés dans le volet gauche de l’Explorateur Windows. Chaque nœud peut contenir d’autres nœuds, appelés nœuds enfants. Les nœuds parents ou les nœuds qui contiennent des nœuds enfants peuvent être affichés comme développés ou réduits. Le contrôle d’arborescence Windows (tel qu’identifié par WC_TREEVIEW) est un exemple de contrôle qui appartient au type de contrôle arborescence.

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 Tree. Les exigences UI Automation s’appliquent à tous les contrôles d’arborescence dans lesquels l’infrastructure/la plateforme d’interface utilisateur intègre la prise en charge d’UI Automation pour les types de contrôles et les modèles de contrôle.

Cette rubrique contient les sections suivantes.

Structure d’arborescence classique

Le tableau suivant illustre un contrôle et une vue de contenu typiques de l’arborescence UI Automation qui se rapporte aux contrôles d’arborescence 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
  • Arbre
    • DataItem (0 ou plus)
    • TreeItem (0 ou plus)
      • TreeItem (0 ou plus)
        • ...
    • ScrollBar (0, 1, 2)
  • Arbre
    • DataItem (0 ou plus)
    • TreeItem (0 ou plus)
      • TreeItem (0 ou plus)
        • ...

 

La vue de contrôle de l’arborescence UI Automation se compose des éléments suivants :

  • Zéro de nombreux éléments dans le conteneur (les éléments peuvent être basés sur les types de contrôle TreeItem ou DataItem).
  • Zéro, un ou deux contrôles de barre de défilement

La vue de contenu de l’arborescence UI Automation se compose de zéro ou de nombreux éléments au sein du conteneur (les éléments peuvent être basés sur les types de contrôle TreeItem ou DataItem).

Propriétés pertinentes

Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour le type de contrôle Tree . Pour plus d’informations sur les propriétés UI Automation, consultez Récupération des propriétés à partir d’UI Automation Elements.

UI Automation, propriété Valeur Notes
UIA_AutomationIdPropertyId Consultez les notes. La valeur de cette propriété doit être unique parmi tous les éléments homologues dans la vue brute de l’arborescence UI Automation.
UIA_BoundingRectanglePropertyId Consultez les notes. Rectangle le plus externe qui contient l’ensemble du contrôle.
UIA_ClickablePointPropertyId Consultez les notes. Les contrôles d’arborescence ont un point cliquable qui provoque la réception de l’arborescence ou de l’un des éléments du conteneur d’arborescences. Un contrôle d’arborescence peut avoir un point cliquable uniquement s’il est possible de cliquer sur un emplacement dans l’arborescence sans avoir à sélectionner un élément ou à recevoir le focus.
UIA_ControlTypePropertyId arbre Cette valeur est la même pour toutes les infrastructures d’interface utilisateur.
UIA_IsContentElementPropertyId VRAI Le contrôle d’arborescence est toujours inclus dans la vue de contenu de l’arborescence UI Automation.
UIA_IsControlElementPropertyId VRAI Le contrôle d’arborescence est toujours inclus dans la vue de contrôle de l’arborescence UI Automation.
UIA_IsKeyboardFocusablePropertyId Consultez les notes. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
UIA_LabeledByPropertyId Consultez les notes. Si le contrôle d’arborescence a une étiquette associée, cette propriété renvoie une IUIAutomationElement pointeur pour cette étiquette. Sinon, la propriété retourne une référence Null.
UIA_LocalizedControlTypePropertyId Consultez les notes. Chaîne localisée correspondant au type de contrôle tree . La valeur par défaut est « tree » pour en-US ou l’anglais (États-Unis).
UIA_NamePropertyId Consultez les notes. La valeur de la propriété name d’un contrôle d’arborescence provient généralement du texte qui étiquette le contrôle. S’il n’existe aucune étiquette de texte, vous devez fournir une valeur pour cette propriété.

 

Modèles de contrôle requis

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

Control Pattern/Pattern, propriété Prise en charge/valeur Notes
IScrollProvider Dépend Implémentez le modèle de contrôle de défilement si les éléments du conteneur d’arborescences peuvent faire l’objet d’un défilement.
ISelectionProvider Dépend Les contrôles d’arborescence qui contiennent un ensemble d’éléments sélectionnables doivent implémenter le modèle de contrôle sélection. Elle n’a pas besoin d’être implémentée si la sélection d’un élément ne transmet aucune information significative à l’utilisateur.
CanSelectMultiple Consultez les notes. Implémentez cette propriété si le contrôle d’arborescence prend en charge plusieurs sélections (la plupart des contrôles d’arborescence ne prennent pas en charge plusieurs sélections).
IsSelectionRequired Consultez les notes. La valeur de cette propriété est exposée si le contrôle exige qu’un élément soit sélectionné.

 

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation que tous les contrôles d’arborescence doivent prendre en charge. Pour plus d’informations sur les événements, consultez vue d’ensemble des événements UI Automation.

Événement UI Automation Notes
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId événement de modification de propriété.
UIA_IsEnabledPropertyId événement de modification de propriété. Si le contrôle prend en charge la propriété IsEnabled, il doit prendre en charge cet événement.
UIA_IsOffscreenPropertyId événement de modification de propriété. Si le contrôle prend en charge la propriété IsOffscreen, il doit prendre en charge cet événement.
UIA_ScrollHorizontallyScrollablePropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_ScrollHorizontalScrollPercentPropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_ScrollHorizontalViewSizePropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_ScrollVerticalScrollPercentPropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_ScrollVerticallyScrollablePropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_ScrollVerticalViewSizePropertyId événement de modification de propriété. Si le contrôle prend en charge le modèle de contrôle Scroll, il doit prendre en charge cet événement.
UIA_Selection_InvalidatedEventId Si le contrôle prend en charge le modèle de contrôle Selection, il doit prendre en charge cet événement.
UIA_StructureChangedEventId

 

conceptuelle

Vue d’ensemble des types de contrôle UI Automation

Vue d’ensemble UI Automation