Type de contrôle ListItem

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

Les contrôles d’élément de liste sont un exemple de contrôles qui implémentent le type de contrôle ListItem .

Les sections suivantes définissent les UI Automation l’arborescence, les propriétés, les modèles de contrôle et les événements requis pour le type de contrôle ListItem. Les exigences UI Automation s’appliquent à tous les contrôles d’élément de liste 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

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 de liste et décrit ce qui peut être contenu dans 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
  • ListItem
    • Image (0 ou plus)
    • Text (0 ou plus)
    • Edition (0 ou plus)
  • ListItem

 

Les enfants d’un contrôle d’élément de liste dans l’affichage de contenu de l’arborescence UI Automation doivent toujours afficher zéro enfant. Si la structure du contrôle est telle que d’autres éléments sont contenus sous l’élément de liste, il doit respecter les exigences de la UI Automation prise en charge du type de contrôle TreeItem.

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 ListItem. 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. Allouez la propriété AutomationId pour un élément de liste si l’élément est connu pour être cohérent entre différentes instances de l’interface utilisateur. Si l’élément de liste est rempli dynamiquement et non prévisible, laissez la propriété AutomationId vide.
UIA_BoundingRectanglePropertyId Consultez les remarques. La valeur de cette propriété doit inclure la zone de contenu de l’image et du texte de l’élément de liste.
UIA_ClickablePointPropertyId Dépend Si le contrôle de liste a un point cliquable (point sur lequel vous pouvez cliquer pour que la liste soit mise au point), ce point doit être exposé via cette propriété. Si le contrôle de liste est entièrement couvert par des éléments de liste descendants, il retourne l’erreur UIA_E_NOCLICKABLEPOINT pour indiquer que le client doit demander à un élément à l’intérieur du contrôle de liste un point cliquable.
UIA_ControlTypePropertyId ListItem Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
UIA_HelpTextPropertyId Consultez les remarques. Le texte d’aide des contrôles de liste doit expliquer pourquoi l’utilisateur est amené à faire un choix dans une liste d’options. Il s’agit généralement du même type d’informations que dans une info-bulle. Par exemple, « Sélectionnez un élément pour définir la résolution d’affichage de votre moniteur ».
UIA_IsContentElementPropertyId TRUE Le contrôle de liste est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation.
UIA_IsControlElementPropertyId TRUE Le contrôle de liste est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation.
UIA_IsKeyboardFocusablePropertyId Consultez les remarques. Si le conteneur peut accepter l’entrée au clavier, cette valeur de propriété doit être TRUE.
UIA_IsOffscreenPropertyId Dépend Cette propriété doit retourner une valeur indiquant si l’élément de liste fait actuellement l’objet d’un défilement dans l’affichage dans le conteneur parent qui implémente le modèle de contrôle Scroll .
UIA_ItemStatusPropertyId Dépend 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 Dépend Cette propriété doit être exposée pour les contrôles d’élément de liste qui représentent un objet sous-jacent. Ces contrôles d’élément de liste ont généralement une icône associée au contrôle que les utilisateurs associent à l’objet sous-jacent.
UIA_LabeledByPropertyId Consultez les remarques. S’il existe une étiquette de texte statique, cette propriété doit exposer une référence à ce contrôle.
UIA_LocalizedControlTypePropertyId Consultez les remarques. Chaîne localisée correspondant au type de contrôle ListItem . La valeur par défaut est « élément de liste » pour en-US ou english (États-Unis).
UIA_NamePropertyId Consultez les remarques. La valeur de la propriété name d’un contrôle d’élément de liste provient de l’étiquette de texte de l’élément.

 

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 de liste. Pour plus d’informations sur les modèles de contrôle, consultez UI Automation Control Patterns Overview.

Modèle de contrôle Support Notes
IExpandCollapseProvider Dépend Si l’élément peut être manipulé pour afficher ou masquer des informations, le modèle de contrôle ExpandCollapse doit être implémenté.
IGridItemProvider Dépend Si la navigation spatiale d’élément à élément est prise en charge dans le conteneur de liste et que le conteneur est organisé en lignes et en colonnes, le modèle de contrôle GridItem doit être implémenté.
IInvokeProvider Dépend Si l’élément a une commande qui peut être effectuée sur celui-ci, distincte de la sélection, le modèle de contrôle Invoke doit être implémenté. Il s’agit généralement d’une action associée au double-clic sur le contrôle d’élément de liste. Par exemple, le lancement d’un document à partir de Windows Explorer ou la lecture d’un fichier de musique dans Microsoft Lecteur multimédia Windows.
IScrollItemProvider Dépend Si l’élément de liste est contenu dans un conteneur qui peut faire défiler, le modèle de contrôle ScrollItem doit être implémenté.
ISelectionItemProvider Dépend Un contrôle d’élément de liste qui prend en charge la sélection doit implémenter le modèle de contrôle SelectionItem . Cela permet aux contrôles d’élément de liste de transmettre des informations quand ils sont sélectionnés.
IToggleProvider Dépend Si l’élément de liste peut être vérifié et que l’action n’effectue pas de changement d’état de sélection, le modèle de contrôle Bascule doit être implémenté.
IValueProvider Dépend Si l’élément peut être modifié, le modèle de contrôle Value doit être implémenté. Les modifications apportées au contrôle d’élément de liste entraînent des modifications des valeurs des propriétés UIA_NamePropertyId et UIA_ValueValuePropertyId .

 

Événements obligatoires

Le tableau suivant répertorie les événements UI Automation que les contrôles d’élément de liste 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é. Si le contrôle prend en charge le modèle de contrôle ExpandCollapse , il doit prendre en charge cet événement.
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_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 conteneur héberge des éléments de liste, le principal moyen de navigation doit accéder aux éléments de liste. Mettre l’accent sur les sous-éléments par le biais de la navigation dans la liste peut prêter à confusion pour les utilisateurs et les outils d’accessibilité. Si le conteneur héberge une liste verticale d’éléments, appuyez sur les touches flèche haut et bas pour parcourir les éléments, mais appuyer sur les touches flèche droite et gauche peut accéder aux sous-éléments de l’élément ciblé, tels que les colonnes de liste ou les sous-éléments de l’interface utilisateur.

Conceptuel

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

Vue d'ensemble d'UI Automation