Partager via


Implémentation du modèle de contrôle Window d’UI Automation

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 présente des conventions et des directives pour implémenter IWindowProvider, notamment des informations sur les propriétés, méthodes et événements WindowPattern . Des liens vers des références supplémentaires sont répertoriés à la fin de la rubrique.

Le modèle de contrôle WindowPattern est utilisé pour prendre en charge les contrôles qui fournissent une fonctionnalité de fenêtre fondamentale dans une interface graphique utilisateur (GUI) traditionnelle. Les contrôles qui doivent implémenter ce modèle de contrôle sont notamment les fenêtres d’application de niveau supérieur, les fenêtres enfants de l’interface multidocument (MDI), les contrôles de volet de fractionnement redimensionnables, les boîtes de dialogue modales et les fenêtres d’info-bulle.

Conventions et directives d'implémentation

Quand vous implémentez le modèle de contrôle Window, notez les conventions et recommandations suivantes :

  • Pour prendre en charge la possibilité de modifier la taille de la fenêtre et la position de l’écran à l’aide d’UI Automation, un contrôle doit implémenter ITransformProvider en plus de IWindowProvider.

  • Les contrôles qui contiennent des barres de titre et des éléments de barre de titre qui permettent de déplacer, redimensionner, agrandir, réduire ou fermer le contrôle sont généralement obligatoires pour implémenter IWindowProvider.

  • En général, les contrôles tels que les info-bulles contextuelles, les zones de liste modifiable ou les menus déroulants n’implémentent pas IWindowProvider.

  • Les fenêtres d’info-bulle se distinguent des info-bulles contextuelles de base par un bouton Fermer identique à celui des fenêtres.

  • Le mode plein écran n’est pas pris en charge par IWindowProvider, car il est propre à la fonctionnalité d’une application et n’est pas un comportement standard de fenêtre.

Membres obligatoires pour IWindowProvider

Les propriétés, méthodes et événements suivants sont obligatoires pour l’interface IWindowProvider.

Membre obligatoire Type de membre Notes
InteractionState Propriété Aucun
IsModal Propriété Aucun
IsTopmost Propriété Aucun
Maximizable Propriété Aucun
Minimizable Propriété Aucun
VisualState Propriété Aucun
Close Méthode Aucun
SetVisualState Méthode Aucun
WaitForInputIdle Méthode Aucun
WindowClosedEvent Événement Aucun
WindowOpenedEvent Événement Aucun
WindowInteractionState Événement N’est pas nécessairement défini sur ReadyForUserInteraction

Exceptions

Les fournisseurs doivent lever les exceptions suivantes.

Type d'exception Condition
InvalidOperationException SetVisualState

- Quand un contrôle ne prend pas en charge un comportement demandé.
ArgumentOutOfRangeException WaitForInputIdle

- Quand le paramètre n’est pas un nombre valide.

Voir aussi