Prise en charge d'UI Automation pour le type de contrôle Table

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 Table. 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 Table contiennent des lignes et des colonnes de texte et, éventuellement, des en-têtes de lignes et des en-têtes de colonnes.

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 Table. Les exigences UI Automation s’appliquent à tous les contrôles de table, 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 de table. 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
Table de charge de travail

- Header (0 ou 1)
- Text (0 ou 1)
- Plusieurs contrôles (0 ou plus)
Table de charge de travail

- Texte (0 ou plus)
- Plusieurs contrôles (0 ou plus)

Si un contrôle de table possède des en-têtes de lignes ou de colonnes, ceux-ci doivent être exposés dans la vue de contrôle de l’arborescence UI Automation. La vue de contenu n’a pas besoin d’exposer ces informations car elles sont accessibles à l’aide de TablePattern.

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 Table. 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. Rectangle externe qui contient l’ensemble du contrôle.
ClickablePointProperty Consultez les remarques. Pris en charge s’il existe un rectangle englobant. Si les points du rectangle englobant ne sont pas tous interactifs et que vous effectuez un test de positionnement spécialisé, vous devez remplacer et fournir un point interactif.
IsKeyboardFocusableProperty Consultez les remarques. Si le contrôle peut recevoir le focus clavier, il doit prendre en charge cette propriété.
NameProperty Consultez les remarques. Le contrôle de table tire généralement son nom d’une étiquette de texte statique. En l’absence d’étiquette de texte statique, vous devez affecter une propriété Name qui doit toujours être disponible pour expliquer l’objectif de la table.
LabeledByProperty Consultez les remarques. S’il existe une étiquette de texte statique, cette propriété doit exposer une référence à l’élément Automation du contrôle.
ControlTypeProperty Table de charge de travail Cette valeur est identique pour toutes les infrastructures d’interface utilisateur.
LocalizedControlTypeProperty "table" Chaîne localisée correspondant au type de contrôle Table.
HelpTextProperty Consultez les remarques. Des détails supplémentaires sur l’objectif de la table doivent être exposés via cette propriété si elle n’est pas suffisamment expliquée par l’accès à NameProperty.
IsContentElementProperty True Le contrôle de table doit toujours être du contenu.
IsControlElementProperty True Le contrôle de table doit toujours être un contrôle.

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

Modèle de contrôle Support Notes
IGridProvider Oui Le contrôle de table prend toujours en charge ce modèle de contrôle car les éléments qu’il contient possèdent des données présentées dans une grille.
IGridItemProvider Oui (requise avec les objets enfants) Les objets internes d’une table doivent prendre en charge les modèles de contrôle GridItem et TableItem. La table elle-même n’a pas besoin de prendre en charge les modèles de contrôle GridItem et TableItem, à moins que la table fasse partie d’une autre table.
ITableProvider Oui Le contrôle de table a toujours la possibilité d’utiliser des en-têtes associés au contenu.
ITableItemProvider Oui (requise avec les objets enfants) Les objets internes d’une table doivent prendre en charge les modèles de contrôle GridItem et TableItem. La table elle-même n’a pas besoin de prendre en charge les modèles de contrôle GridItem et TableItem, à moins que la table fasse partie d’une autre table.

É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 de table. Pour plus d’informations sur les événements, consultez UI Automation Events Overview.

Événement UI Automation Support Notes
É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
AutomationFocusChangedEvent Obligatoire None
StructureChangedEvent Obligatoire None

Voir aussi