Type de contrôle TreeItem
Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle TreeItem.
Le type de contrôle TreeItem représente un nœud dans un conteneur d’arborescences. 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 les UI Automation nécessaires à l’arborescence, aux propriétés, aux modèles de contrôle et aux événements pour le type de contrôle TreeItem. 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.
- Arborescence standard
- Propriétés pertinentes
- Modèles de contrôle requis
- Événements obligatoires
- Remarques
- Rubriques connexes
Arborescence standard
Le tableau suivant illustre une vue de contrôle et de contenu classique de l’arborescence UI Automation qui se rapporte aux contrôles d’élément 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 |
---|---|
|
|
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 des fonctionnalités au-delà de ce qui est exposé 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 de contenu tant qu’ils ne sont pas développés et visibles (ou peuvent être défilements dans l’affichage).
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 de contenu, car les informations sont déjà représentées par l’élément d’arborescence parent.
Les éléments d’arborescence qui font défiler l’écran apparaissent dans les affichages de contrôle et de contenu de l’arborescence UI Automation et doivent avoir la propriété IUIAutomationElement::CurrentIsOffscreen (ou CachedIsOffscreen) définie sur TRUE.
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 TreeItem. Pour plus d’informations sur UI Automation propriétés, consultez Récupération de 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. | Cette propriété doit retourner un emplacement qui amène l’élément d’arborescence à modifier l’état de sélection ou à devenir prioritaire. |
UIA_ControlTypePropertyId | TreeItem | Cette valeur est identique pour toutes les infrastructures d’interface utilisateur. |
UIA_IsContentElementPropertyId | TRUE | Le contrôle d’élément d’arborescence est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation. |
UIA_IsControlElementPropertyId | TRUE | Le contrôle d’élément 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_IsOffscreenPropertyId | Consultez les remarques. | Cette propriété indique si un contrôle d’élément d’arborescence est défilé hors de l’écran. |
UIA_ItemStatusPropertyId | Consultez les remarques. | Si le contrôle contient status mis à jour dynamiquement, cette propriété doit être prise en charge afin qu’une technologie d’assistance puisse recevoir des mises à jour lorsque la status de l’élément change. |
UIA_ItemTypePropertyId | 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 particulier d’élément, cette propriété doit être prise en charge et doit indiquer le type d’élément. |
UIA_LabeledByPropertyId | NULL | Les contrôles d’élément d’arborescence créent eux-mêmes leurs étiquettes. |
UIA_LocalizedControlTypePropertyId | Consultez les remarques. | Chaîne localisée correspondant au type de contrôle TreeItem. La valeur par défaut est « élément d’arborescence » pour en-US ou anglais (États-Unis). |
UIA_NamePropertyId | Consultez les remarques. | Cette propriété expose le texte affiché pour chaque contrôle d’élément d’arborescence. |
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’élément 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 |
---|---|---|
IExpandCollapseProvider | Obligatoire | Tous les éléments d’arborescence doivent prendre en charge le modèle de contrôle ExpandCollapse , car tous les éléments 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 feuilles lorsqu’ils ne sont pas développés ou réduits. |
IInvokeProvider | Dépend | Implémentez le modèle de contrôle Invoke si l’élément d’arborescence peut exécuter une commande. |
IScrollItemProvider | Dépend | Implémentez le modèle de contrôle ScrollItem si le conteneur d’arborescences prend en charge le modèle de contrôle Scroll . |
ISelectionItemProvider | Dépend | Implémentez le modèle de contrôle SelectionItem s’il est possible d’avoir une sélection active qui est conservée lorsque l’utilisateur retourne au conteneur d’arborescences. |
SelectionContainer | Obligatoire | Cette propriété expose le même conteneur pour tous les éléments du conteneur. |
Événements obligatoires
Le tableau suivant répertorie les événements UI Automation que les contrôles d’éléments 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_ExpandCollapseExpandCollapseStatePropertyId’événement de modification de propriété. | |
UIA_Invoke_InvokedEventId | Si le contrôle prend en charge le modèle de contrôle Invoke , il doit prendre en charge cet événement. |
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_ItemStatusPropertyId’événement de modification de propriété. | Si le contrôle prend en charge la propriété ItemStatus , il doit prendre en charge cet événement. |
UIA_MultipleViewCurrentViewPropertyId’événement de modification de propriété. | Si le contrôle prend en charge le modèle de contrôle MultipleView , il doit prendre en charge cet événement. |
UIA_NamePropertyId événement de modification de propriété. | |
UIA_SelectionItem_ElementAddedToSelectionEventId | Si le contrôle prend en charge le modèle de contrôle SelectionItem , il doit prendre en charge cet événement. |
UIA_SelectionItem_ElementRemovedFromSelectionEventId | Si le contrôle prend en charge le modèle de contrôle SelectionItem , il doit prendre en charge cet événement. |
UIA_SelectionItem_ElementSelectedEventId | Si le contrôle prend en charge le modèle de contrôle SelectionItem , il doit prendre en charge cet événement. |
UIA_StructureChangedEventId | |
UIA_ToggleToggleStatePropertyId’événement de modification de propriété. | Si le contrôle prend en charge le modèle de contrôle Bascule , il doit prendre en charge cet événement. |
UIA_ValueValuePropertyId événement de modification de propriété. | Si le contrôle prend en charge le modèle de contrôle Value , il doit prendre en charge cet événement. |
Notes
Si un élément d’arborescence a des sous-éléments autres que des nœuds de plan enfants, le fournisseur doit gérer les informations d’objet enfant avec soin et clarté. Dans UI Automation, l’arborescence est gérée par la hiérarchie d’arborescence elle-même. En ayant un ou plusieurs enfants non-nœud de plan, les différences entre eux et les nœuds de contour enfants réels deviennent sérieusement ambiguës.
Rubriques connexes