Prise en charge d'UI Automation pour le type de contrôle ListItem
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 ListItem. 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 l’arborescence UI Automation, les valeurs de propriété UI Automation et les modèles de contrôle.
Les contrôles d’élément de liste constituent un exemple de contrôles qui implémentent le type de contrôle ListItem.
Les sections suivantes définissent l’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 ListItem. Les exigences UI Automation s’appliquent à tous les contrôles de liste, 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 relative aux contrôles d’élément de liste. 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 |
---|---|
ListItem - Image (0 ou plus) - Texte (0 ou plus) - Edit (0 ou plus) |
ListItem |
Les enfants d’un contrôle d’élément de liste dans l’affichage du contenu de l’arborescence UI Automation doivent toujours correspondre à la valeur « 0 ». Si la structure du contrôle est telle que d’autres éléments sont contenus sous l’élément de liste, elle doit suivre les exigences du type de contrôle Prise en charge d’UI Automation pour le type de contrôle TreeItem.
Propriétés UI Automation obligatoires
Le tableau suivant répertorie les propriétés UI Automation dont la valeur ou la définition est particulièrement pertinente pour les contrôles d’élément 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. | La valeur de cette propriété doit inclure la zone de contenu de l’image et du texte de l’élément de liste. |
ClickablePointProperty | Dépend | Si le contrôle de liste a un point interactif (point sur lequel l’utilisateur clique pour que la liste prenne le focus), ce point doit être exposé via cette propriété. Si le contrôle de liste est intégralement couvert par les éléments de liste descendants, il déclenche NoClickablePointException pour indiquer que le client doit demander un point interactif à un élément du contrôle de liste. |
NameProperty | Consultez les remarques. | La valeur de propriété du nom d’un contrôle d’élément de liste provient du contenu textuel de l’élément. |
LabeledByProperty | Consultez les remarques. | S’il existe une étiquette de texte statique, cette propriété doit exposer une référence à ce contrôle. |
ControlTypeProperty | ListItem | Cette valeur est identique pour toutes les infrastructures d’interface utilisateur. |
LocalizedControlTypeProperty | "élément de liste" | Chaîne localisée correspondant au type de contrôle ListItem. |
IsContentElementProperty | True | Le contrôle de liste est toujours inclus dans l’affichage du contenu de l’arborescence UI Automation. |
IsControlElementProperty | True | Le contrôle de liste est toujours inclus dans l’affichage de contrôle de l’arborescence UI Automation. |
IsKeyboardFocusableProperty | True | Si le conteneur peut accepter l’entrée au clavier, cette propriété doit avoir la valeur true. |
HelpTextProperty | "" | 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 de votre moniteur ». |
ItemTypeProperty | 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. |
IsOffscreenProperty | 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 le conteneur parent qui implémente le modèle de contrôle Scroll. |
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 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 |
---|---|---|
ISelectionItemProvider | Oui | Le contrôle d’élément de liste doit implémenter ce modèle de contrôle. Cela permet aux contrôles d’élément de liste de transmettre des informations quand ils sont sélectionnés. |
IScrollItemProvider | Dépend | Si l’élément de liste est contenu dans un conteneur pouvant faire l’objet d’un défilement, ce modèle de contrôle doit être implémenté. |
IToggleProvider | Dépend | Si l’élément de liste est sélectionnable et si l’action n’effectue pas de changement d’état de sélection, ce modèle de contrôle doit être implémenté. |
IExpandCollapseProvider | Dépend | Si l’élément peut être manipulé pour afficher ou masquer des informations, ce modèle de contrôle doit être implémenté. |
IValueProvider | Dépend | Si l’élément peut être modifié, ce modèle de contrôle doit être implémenté. Les changements apportés au contrôle d’élément de liste entraînent des modifications des valeurs de NamePropertyet Value. |
IGridItemProvider | Dépend | Si la navigation spatiale d’un élément à un autre est prise en charge dans le conteneur de liste, et si 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 comporte une commande (distincte de la sélection) qui peut être effectuée sur celui-ci, ce modèle 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 l’Explorateur Microsoft Windows ou la lecture d’un fichier de musique dans Microsoft Windows Media Player. |
É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’élément de liste. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.
Événement UI Automation | Support | Notes |
---|---|---|
InvokedEvent | Dépend | None |
ElementAddedToSelectionEvent | Obligatoire | None |
ElementRemovedFromSelectionEvent | Obligatoire | None |
ElementSelectedEvent | Obligatoire | 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 |
NameProperty | Obligatoire | None |
Événement de modification de propriétéItemStatusProperty | Dépend | None |
Événement de modification de propriétéExpandCollapseStateProperty | Dépend | None |
Événement de modification de propriétéValueProperty | Dépend | None |
Événement de modification de propriétéToggleStateProperty | Dépend | None |
AutomationFocusChangedEvent | Obligatoire | None |
StructureChangedEvent | Obligatoire | None |