Partager via


Modèles de contrôle et interfaces

Répertorie les modèles de contrôle Microsoft UI Automation, les classes que les clients utilisent pour y accéder et les fournisseurs d’interfaces qu’ils utilisent pour les implémenter.

Le tableau de cette rubrique décrit les modèles de contrôle Microsoft UI Automation. Le tableau répertorie également les classes utilisées par les clients UI Automation pour accéder aux modèles de contrôle et aux interfaces utilisées par les fournisseurs UI Automation pour les implémenter. La colonne Modèle de contrôle affiche le nom du modèle du point de vue du client UI Automation, sous la forme d’une valeur constante répertoriée dans les identificateurs de propriété de disponibilité du modèle de contrôle. Du point de vue du fournisseur UI Automation, chacun de ces modèles est un nom de constante PatternInterface . La colonne d’interface du fournisseur de classes affiche le nom de l’interface que les fournisseurs implémentent pour fournir ce modèle pour un contrôle XAML personnalisé.

Note

Pour les applications WinUI créées avec le Kit de développement logiciel (SDK) d’application Windows, utilisez les interfaces dans Microsoft.UI.Xaml.Automation.Provider. Pour les applications UWP, utilisez Windows.UI.Xaml.Automation.Provider.

Pour plus d’informations sur la façon d’implémenter des homologues d’automatisation personnalisés qui exposent des modèles de contrôle et implémentent les interfaces, consultez Homologues Automation personnalisés.

Lorsque vous implémentez un modèle de contrôle, vous devez également consulter la documentation du fournisseur UI Automation qui explique certaines des attentes que les clients auront d’un modèle de contrôle, quel que soit l’infrastructure d’interface utilisateur utilisée pour l’implémenter. Certaines informations répertoriées dans la documentation générale du fournisseur UI Automation influenceront la façon dont vous implémentez vos homologues et prennent correctement en charge ce modèle. Consultez Implémentation des modèles de contrôle UI Automation et affichez la page qui documente le modèle que vous envisagez d’implémenter.

Modèle de contrôle Interface du fournisseur WinUI Interface du fournisseur UWP Description
Annotation IAnnotationProvider IAnnotationProvider Permet d’exposer les propriétés d’une annotation dans un document.
Dock IDockProvider IDockProvider Utilisé pour les contrôles qui peuvent être ancrés dans un conteneur d’ancrage. Par exemple, les barres d’outils ou les palettes d’outils.
Drag IDragProvider IDragProvider Utilisé pour prendre en charge les contrôles déplaçables ou les contrôles avec des éléments déplaçables.
DropTarget IDropTargetProvider IDropTargetProvider Permet de prendre en charge les contrôles qui peuvent être visés par une opération de glisser-déplacer.
ExpandCollapse IExpandCollapseProvider IExpandCollapseProvider Utilisé pour soutenir les contrôles qui s’étendent visuellement afin d'afficher plus de contenu et se réduisent pour masquer le contenu.
Grid Igridprovider Igridprovider Utilisé pour les contrôles qui prennent en charge les fonctionnalités de grille, telles que le dimensionnement et le déplacement vers une cellule spécifiée. Notez que Grid lui-même n’implémente pas ce modèle, car il fournit une disposition, mais n’est pas un contrôle.
GridItem IGridItemProvider IGridItemProvider Utilisé pour les contrôles qui comportent des cellules au sein des grilles.
Invoquer IInvokeProvider IInvokeProvider Utilisé pour les contrôles qui peuvent être appelés, tels qu’un bouton.
ItemContainer IItemContainerProvider IItemContainerProvider Permet aux applications de rechercher un élément dans un conteneur, tel qu’une liste virtualisée.
MultipleView IMultipleViewProvider IMultipleViewProvider Utilisé pour les contrôles qui peuvent basculer entre plusieurs représentations du même ensemble d’informations, de données ou d’enfants.
ObjectModel IObjectModelProvider IObjectModelProvider Permet d’exposer un pointeur vers le modèle objet sous-jacent d’un document.
RangeValue IRangeValueProvider IRangeValueProvider Utilisé pour les contrôles qui ont une plage de valeurs qui peuvent être appliquées au contrôle. Par exemple, un contrôle déroulant contenant des années peut avoir une plage de 1900 à l’année actuelle, tandis qu’un autre contrôle déroulant qui affiche des mois pourrait avoir une plage de 1 à 12.
Scroll IScrollProvider IScrollProvider Utilisé pour les contrôles qui peuvent défiler. Par exemple, un contrôle qui a des barres de défilement actives lorsqu’il existe plus d’informations qu’il ne peut être affiché dans la zone visible du contrôle.
ScrollItem IScrollItemProvider IScrollItemProvider Utilisé pour les contrôles qui ont des éléments individuels dans une liste qui défile. Par exemple, un contrôle de liste contenant des éléments distincts dans la liste de défilement, tel qu'une boîte combo.
Sélection Iselectionprovider Iselectionprovider Utilisé pour les contrôles de conteneur de sélection. Par exemple, ListBox et ComboBox.
SelectionItem ISelectionItemProvider ISelectionItemProvider Utilisé pour les éléments individuels dans les contrôles de sélection de conteneur, tels que les boîtes de liste et les boîtes combinées.
Tableur ISpreadsheetProvider ISpreadsheetProvider Utilisé pour exposer le contenu d’une feuille de calcul ou d’un autre document basé sur la grille.
SpreadsheetItem ISpreadsheetItemProvider ISpreadsheetItemProvider Permet d’exposer les propriétés d’une cellule dans une feuille de calcul ou un autre document basé sur la grille.
Styles IStylesProvider IStylesProvider Permet de décrire un élément d’interface utilisateur qui a un style, une couleur de remplissage, un motif de remplissage ou une forme spécifique.
SynchronizedInput ISynchronizedInputProvider ISynchronizedInputProvider Permet aux applications clientes UI Automation de diriger l’entrée de la souris ou du clavier vers un élément d’interface utilisateur spécifique.
Tableau ITableProvider ITableProvider Utilisé pour les contrôles qui ont une grille ainsi que des informations d’en-tête. Par exemple, un contrôle de calendrier tabulaire.
TableItem ITableItemProvider ITableItemProvider Utilisé pour les éléments d’un tableau.
Texte ITextProvider ITextProvider Utilisé pour modifier des contrôles et des documents qui exposent des informations textuelles. Voir aussi ITextRangeProvider et ITextProvider2.
TextChild ITextChildProvider ITextChildProvider Permet d'accéder à l'ascendant direct d'un élément qui prend en charge le modèle de contrôle de texte Text.
Textedit Aucune classe managée disponible Aucune classe managée disponible Fournit l’accès à un contrôle qui modifie du texte, par exemple un contrôle qui effectue une correction automatique ou active la composition d’entrée via un éditeur de méthode d’entrée (IME).
PlageDeTexte ITextRangeProvider ITextRangeProvider Fournit l’accès à une étendue de texte continu dans un conteneur de texte qui implémente ITextProvider. Voir aussi ITextRangeProvider2.
Interrupteur IToggleProvider IToggleProvider Utilisé pour les contrôles où l’état peut être basculé. Par exemple, CheckBox et les éléments de menu qui peuvent être cochés.
Transform ITransformProvider ITransformProvider Utilisé pour les contrôles qui peuvent être redimensionnés, déplacés et pivotés. Les utilisations classiques du modèle de contrôle Transform sont dans les concepteurs, les formulaires, les éditeurs graphiques et les applications de dessin.
Valeur Ivalueprovider Ivalueprovider Permet aux clients d’obtenir ou de définir une valeur sur des contrôles qui ne prennent pas en charge une plage de valeurs.
VirtualizedItem IVirtualizedItemProvider IVirtualizedItemProvider Expose les éléments à l’intérieur des conteneurs virtualisés et assurez-vous qu'ils soient entièrement accessibles en tant qu'éléments d’interface utilisateur automatisée.
fenêtre IWindowProvider IWindowProvider Expose des informations spécifiques à Windows, un concept fondamental au système d’exploitation Microsoft Windows. Parmi les exemples de contrôles qui sont des fenêtres, on trouve les fenêtres enfant et les boîtes de dialogue.

Note

Tous ces modèles ne sont pas implémentés par les contrôles XAML existants. Certaines interfaces de modèle existent uniquement pour maintenir la parité avec les définitions de modèle de l'infrastructure générale de l'automatisation de l'interface utilisateur et pour prendre en charge les scénarios de pair d'automatisation qui nécessitent une implémentation entièrement personnalisée.