Sdílet prostřednictvím


Vzory ovládacích prvků automatizace uživatelského rozhraní pro klienty

Poznámka:

Tato dokumentace je určená pro vývojáře rozhraní .NET Framework, kteří chtějí používat spravované třídy model UI Automation definované v System.Windows.Automation oboru názvů. Nejnovější informace o model UI Automation najdete v tématu Rozhraní API služby Windows Automation: model UI Automation.

Tento přehled představuje řídicí vzory pro klienty model UI Automation. Obsahuje informace o tom, jak může klient model UI Automation používat řídicí vzory pro přístup k informacím o uživatelském rozhraní.

Vzory ovládacích prvků poskytují způsob, jak kategorizovat a vystavit funkce ovládacího prvku nezávisle na typu ovládacího prvku nebo vzhledu ovládacího prvku. model UI Automation klienti mohou prozkoumatAutomationElement, které řídicí vzory jsou podporovány, a zajistit chování ovládacího prvku.

Úplný seznam vzorů ovládacích prvků najdete v tématu model UI Automation Přehled vzorů ovládacích prvků.

Získání vzorů ovládacích prvků

Klienti načítají řídicí vzor z AutomationElement volání AutomationElement.GetCachedPatternAutomationElement.GetCurrentPatternnebo .

Klienti mohou použít metodu GetSupportedPatterns nebo jednotlivou IsPatternAvailable vlastnost (například IsTextPatternAvailableProperty) k určení, zda je v objektu AutomationElementpodporován vzor nebo skupina vzorů . Je však efektivnější se pokusit získat vzor ovládacího prvku a testovat null odkaz, než zkontrolovat podporované vlastnosti a načíst vzor ovládacího prvku, protože výsledkem je méně volání křížového procesu.

Následující příklad ukazuje, jak získat TextPattern řídicí vzor z .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;
}

Načítání vlastností u vzorů ovládacích prvků

Klienti mohou načíst hodnoty vlastností u vzorů ovládacích prvků voláním AutomationElement.GetCachedPropertyValue nebo AutomationElement.GetCurrentPropertyValue přetypováním objektu vráceného odpovídajícím typem. Další informace o model UI Automation vlastnosti naleznete v tématu model UI Automation Vlastnosti pro klienty.

Kromě GetPropertyValue metod lze hodnoty vlastností načíst prostřednictvím přístupových objektů CLR (Common Language Runtime) pro přístup k model UI Automation vlastností ve vzoru.

Ovládací prvky s proměnnými vzory

Některé typy ovládacích prvků podporují různé vzory v závislosti na jejich stavu nebo způsobu, jakým se ovládací prvek používá. Příklady ovládacích prvků, které můžou mít proměnlivé vzory, jsou zobrazení seznamu (miniatury, dlaždice, ikony, seznam, podrobnosti), grafy Microsoft Excelu (výsečový, spojnicový, pruhový, hodnota buňky se vzorcem), oblast dokumentu Microsoft Wordu (normální, rozložení webu, osnova, rozložení při tisku, náhled tisku) a vzhledy Microsoft Přehrávač médií Windows.

Ovládací prvky implementované vlastní typy ovládacích prvků můžou mít libovolnou sadu vzorů ovládacích prvků, které jsou potřeba k reprezentaci jejich funkcí.

Viz také