Wzorce kontrolek automatyzacji interfejsu użytkownika dla klientów

Uwaga

Ta dokumentacja jest przeznaczona dla deweloperów programu .NET Framework, którzy chcą używać zarządzanych klas automatyzacja interfejsu użytkownika zdefiniowanych w System.Windows.Automation przestrzeni nazw. Aby uzyskać najnowsze informacje na temat automatyzacja interfejsu użytkownika, zobacz Interfejs API usługi Windows Automation: automatyzacja interfejsu użytkownika.

W tym omówieniu przedstawiono wzorce kontrolek dla klientów automatyzacja interfejsu użytkownika. Zawiera on informacje na temat sposobu, w jaki klient automatyzacja interfejsu użytkownika może używać wzorców kontroli w celu uzyskania dostępu do informacji o interfejsie użytkownika.

Wzorce kontrolek umożliwiają kategoryzowanie i uwidacznianie funkcjonalności kontrolki niezależnie od typu kontrolki lub wyglądu kontrolki. automatyzacja interfejsu użytkownika klienci mogą sprawdzić, AutomationElement które wzorce sterowania są obsługiwane i mieć pewność zachowania kontrolki.

Aby uzyskać pełną listę wzorców kontrolek, zobacz automatyzacja interfejsu użytkownika Wzorce kontrolek — omówienie.

Pobieranie wzorców kontrolek

Klienci pobierają wzorzec kontrolki z obiektu AutomationElement przez wywołanie metody AutomationElement.GetCachedPattern lub AutomationElement.GetCurrentPattern.

Klienci mogą używać GetSupportedPatterns metody lub pojedynczej IsPatternAvailable właściwości (na przykład ) w celu określenia, IsTextPatternAvailablePropertyczy wzorzec lub grupa wzorców jest obsługiwana w obiekcie AutomationElement. Jednak bardziej wydajne jest podjęcie próby uzyskania wzorca kontrolki i przetestowania null odwołania niż sprawdzenie obsługiwanych właściwości i pobranie wzorca kontrolki, ponieważ powoduje to mniej wywołań między procesami.

W poniższym przykładzie pokazano, jak uzyskać TextPattern wzorzec kontrolki z elementu 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;
}

Pobieranie właściwości we wzorcach kontrolek

Klienci mogą pobierać wartości właściwości we wzorcach kontrolek przez wywołanie AutomationElement.GetCachedPropertyValue metody lub AutomationElement.GetCurrentPropertyValue i rzutowanie obiektu zwróconego do odpowiedniego typu. Aby uzyskać więcej informacji na temat właściwości automatyzacja interfejsu użytkownika, zobacz automatyzacja interfejsu użytkownika Właściwości dla klientów.

Oprócz GetPropertyValue metod wartości właściwości można pobrać za pomocą metod dostępu środowiska uruchomieniowego języka wspólnego (CLR), aby uzyskać dostęp do właściwości automatyzacja interfejsu użytkownika we wzorcu.

Kontrolki ze wzorcami zmiennych

Niektóre typy kontrolek obsługują różne wzorce w zależności od ich stanu lub sposobu, w jaki jest używana kontrolka. Przykłady kontrolek, które mogą mieć wzorce zmiennych, to widoki listy (miniatury, kafelki, ikony, lista, szczegóły), wykresy programu Microsoft Excel (kołowe, liniowe, słupkowy, wartości komórek z formułą), obszar dokumentu programu Microsoft Word (normalny, układ internetowy, kontur, układ wydruku, podgląd wydruku) i skórki microsoft Odtwarzacz multimedialny Windows.

Kontrolki implementujące niestandardowe typy kontrolek mogą mieć dowolny zestaw wzorców sterujących, które są potrzebne do reprezentowania ich funkcjonalności.

Zobacz też