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. |