Type de contrôle DataGrid
Cette rubrique fournit des informations sur la prise en charge de Microsoft UI Automation pour le type de contrôle DataGrid.
Le type de contrôle DataGrid permet à un utilisateur d’utiliser facilement des éléments qui contiennent des données ou des éléments d’automatisation présentés dans des colonnes ou des lignes. Les contrôles de grille de données présentent des lignes d’éléments et des colonnes d’informations sur ces éléments. Un contrôle d’affichage de liste dans Windows Vista Explorer est un exemple qui prend en charge le type de contrôle DataGrid.
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 DataGrid. Les exigences UI Automation s’appliquent à tous les contrôles de grille de données 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
- Exemple de type de contrôle DataGrid
- 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 de grille de données 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 |
---|---|
|
|
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 DataGrid. 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. | Pris en charge s’il existe un rectangle englobant. Si tous les points du rectangle englobant ne sont pas cliquables et que l’élément effectue des tests de positionnement spécialisés, remplacez et fournissez un point cliquable. |
UIA_ControlTypePropertyId | DataGrid | |
UIA_IsContentElementPropertyId | true | La valeur de cette propriété doit toujours être TRUE. Cela signifie que le contrôle de grille de données doit toujours être inclus dans l’affichage du contenu de l’arborescence UI Automation. |
UIA_IsControlElementPropertyId | true | La valeur de cette propriété doit toujours être TRUE. Cela signifie que le contrôle de grille de données doit toujours être inclus dans la vue 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. | 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 DataGrid . La valeur par défaut est « data grid » pour en-US ou english (États-Unis). |
UIA_NamePropertyId | Consultez les remarques. | Le contrôle de grille de données obtient généralement la valeur de sa propriété Name à partir d’une étiquette de texte statique. S’il n’existe pas d’étiquette de texte statique, un développeur d’application doit affecter une valeur à pour la propriété Name . La valeur de la propriété Name ne doit jamais être le contenu textuel du contrôle d’édition. |
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 de grille de données. 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 | Obligatoire | Le contrôle de grille de données lui-même prend toujours en charge le modèle de contrôle Grid , car les éléments qu’il contient ont des métadonnées qui sont disposées dans une grille. |
IScrollProvider | Dépend | La possibilité de faire défiler la grille de données dépend du contenu et de la présence de barres de défilement. |
ISelectionProvider | Dépend | La possibilité de sélectionner la grille de données dépend du contenu. |
ITableProvider | Dépend | Un contrôle de grille de données qui a un en-tête doit prendre en charge le modèle de contrôle Table . |
Les éléments de données dans les conteneurs de grille de données prennent en charge au minimum ce qui suit :
- Modèle de contrôle SelectionItem (si la grille de données est sélectionnable)
- Modèle de contrôle ScrollItem (si la grille de données peut faire défiler)
- Modèle de contrôle GridItem
- Modèle de contrôle TableItem (si la grille de données a un en-tête)
Événements obligatoires
Le tableau suivant répertorie les événements UI Automation que les contrôles de grille de données 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_LayoutInvalidatedEventId | |
UIA_StructureChangedEventId | |
UIA_MultipleViewCurrentViewPropertyId’événement de modification de propriété. | Si le contrôle prend en charge la propriété CurrentView du modèle de contrôle MultipleView , 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 |
Exemple de type de contrôle DataGrid
L’image suivante illustre un contrôle d’affichage de liste qui implémente le type de contrôle DataGrid .
La vue de contrôle et l’affichage du contenu de l’arborescence UI Automation qui se rapporte au contrôle d’affichage de liste sont affichés ci-dessous. Les modèles de contrôle de chaque élément Automation sont indiqués entre parenthèses.
Arborescence UI Automation - Vue Contrôle | Arborescence UI Automation - Vue Contenu |
---|---|
DataGrid (Tri, Table, Sélection, Grille)
|
DataGrid (Table, Grid, Selection)
|
*L’exemple précédent montre une grille de données qui contient plusieurs niveaux de contrôles. Le contrôle Group (« Contoso ») contient deux contrôles DataItem (« Comptes Receivable.doc » et « Comptes Payable.doc »). Une paire DataGrid/GridItem est indépendante d’une paire à un autre niveau. Les contrôles DataItem sous un groupe peuvent également être exposés en tant que type de contrôle ListItem , ce qui leur permet d’être présentés plus clairement comme des objets sélectionnables, plutôt que comme de simples éléments de données. Cet exemple n’inclut pas les sous-éléments des éléments de données groupés. Pour obtenir un autre exemple de plusieurs niveaux de contrôles, consultez le type de contrôle DataItem .
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour