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.

Le type de contrôle Tree est utilisé pour les conteneurs dont le contenu est pertinent en tant que hiérarchie de nœuds, comme avec la façon dont les fichiers et dossiers sont affichés dans le volet gauche de 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. Le contrôle d’arborescence Windows (identifié par WC_TREEVIEW) est un exemple de contrôle qui appartient au type de contrôle Tree .

Les sections suivantes définissent les UI Automation arborescence requises, les propriétés, les modèles de contrôle et les événements pour le type de contrôle Tree. Les exigences UI Automation s’appliquent à tous les contrôles d’éléments d’arborescence où l’infrastructure/plateforme d’interface utilisateur intègre UI Automation prise en charge des types de contrôles et des modèles de contrôle.

Cette rubrique contient les sections suivantes.

Structure d’arborescence classique

Le tableau suivant illustre une vue de contrôle et de contenu typique 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.

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 des 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 scroll bar

La vue de contenu de l’arborescence UI Automation se compose de zéro ou de plusieurs éléments dans le 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’éléments UI Automation.

Propriété UI Automation Valeur Notes
UIA_AutomationIdPropertyId Consultez les remarques. 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 remarques. Rectangle externe qui contient l’ensemble du contrôle.
UIA_ClickablePointPropertyId Consultez les remarques. Les contrôles d’arborescence ont un point cliquable qui fait que l’arborescence ou l’un des éléments du conteneur d’arborescences reçoit le focus. Un contrôle d’arborescence peut avoir un point cliquable uniquement s’il est possible de cliquer sur un emplacement dans l’arborescence sans provoquer la sélection d’un élément ou la réception du focus.
UIA_ControlTypePropertyId Arborescence Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
UIA_IsContentElementPropertyId true Le contrôle d’arborescence est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
UIA_IsControlElementPropertyId true Le contrôle d’arborescence est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
UIA_IsKeyboardFocusablePropertyId Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
UIA_LabeledByPropertyId Consultez les remarques. Si une étiquette est associée au contrôle d’arborescence, cette propriété retourne un pointeur IUIAutomationElement pour cette étiquette. Sinon, la propriété retourne une référence null.
UIA_LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle Tree . La valeur par défaut est « tree » pour en-US ou English (États-Unis).
UIA_NamePropertyId 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. S’il n’y a pas d’é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 qui doivent être pris en charge par tous les contrôles d’arborescence. 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
IScrollProvider Dépend Implémentez le modèle de contrôle Scroll si les éléments du conteneur d’arborescences peuvent être défiler.
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 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).
IsSelectionRequiredred 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.

 

É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 UI Automation Events Overview.

É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 Sélection , il doit prendre en charge cet événement.
UIA_StructureChangedEventId

 

Conceptuel

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

Vue d'ensemble d'UI Automation