Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Remarque
Cette documentation est destinée 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 informations les plus récentes sur UI Automation, consultez API Windows Automation : UI Automation.
Cette vue d’ensemble présente les modèles de contrôle pour les clients UI Automation. Il inclut des informations sur la façon dont un client UI Automation peut utiliser des modèles de contrôle pour accéder aux informations sur l’interface utilisateur (UI).
Les modèles de contrôle permettent de classer et d’exposer les fonctionnalités d’un contrôle indépendamment du type de contrôle ou de l’apparence du contrôle. Les clients UI Automation peuvent examiner un AutomationElement modèle de contrôle pour déterminer quels modèles de contrôle sont pris en charge et être assurés du comportement du contrôle.
Pour obtenir la liste complète des modèles de contrôle, consultez vue d’ensemble des modèles de contrôle UI Automation.
Obtention de modèles de contrôle
Les clients récupèrent un modèle de contrôle à partir d’un AutomationElement en appelant soit AutomationElement.GetCachedPattern soit AutomationElement.GetCurrentPattern.
Les clients peuvent utiliser la GetSupportedPatterns méthode ou une propriété individuelle IsPatternAvailable
(par exemple IsTextPatternAvailableProperty) pour déterminer si un modèle ou un groupe de modèles est pris en charge sur le AutomationElement. Toutefois, il est plus efficace d’essayer d’obtenir le modèle de contrôle et de tester une null
référence que de vérifier les propriétés prises en charge et de récupérer le modèle de contrôle, car il entraîne moins d’appels inter-processus.
L’exemple suivant montre comment obtenir un TextPattern modèle de contrôle à partir d’un AutomationElement.
// Specify the control type we're looking for, in this case 'Document'
PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);
// target --> The root AutomationElement.
AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);
targetTextPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;
if (targetTextPattern == null)
{
Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
return;
}
Récupération des propriétés sur les modèles de contrôle
Les clients peuvent récupérer les valeurs de propriété sur les modèles de contrôle en appelant soit AutomationElement.GetCachedPropertyValue soit AutomationElement.GetCurrentPropertyValue et en convertissant l’objet retourné en un type approprié. Pour plus d’informations sur les propriétés UI Automation, consultez Propriétés UI Automation pour les clients.
Outre les GetPropertyValue
méthodes, les valeurs de propriété peuvent être récupérées via les accesseurs CLR (Common Language Runtime) pour accéder aux propriétés UI Automation sur un modèle.
Contrôles avec des modèles de variables
Certains types de contrôle prennent en charge différents modèles en fonction de leur état ou de la façon dont le contrôle est utilisé. Des exemples de contrôles pouvant avoir des modèles variables sont les affichages de liste (miniatures, vignettes, icônes, liste, détails), les graphiques Microsoft Excel (secteurs, courbes, barres, valeur de cellule avec une formule), la zone de document de Microsoft Word (normal, mode web, plan, mode Impression, aperçu avant impression) et les apparences du Lecteur Windows Media Microsoft.
Les contrôles implémentant des types de contrôle personnalisés peuvent avoir n’importe quel ensemble de modèles de contrôle nécessaires pour représenter leurs fonctionnalités.
Voir aussi
- Modèles de contrôle d'Automation UI
- Modèle de texte UI Automation
- Appeler un contrôle à l’aide d’UI Automation
- Obtenir l'état bascule d'une case à cocher à l'aide d'UI Automation
- Mappage des modèles de contrôle pour les clients UI Automation
- Exemple d’insertion de texte TextPattern
- Exemple de recherche et de sélection TextPattern
- InvokePattern, ExpandCollapsePattern et TogglePattern, exemple