Sdílet prostřednictvím


Přehled vzorů ovládacích prvků automatizace uživatelského rozhraní

Poznámka:

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

Tento přehled představuje vzory ovládacích prvků Microsoft UI Automation. 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.

Automatizace uživatelského rozhraní používá vzory ovládacích prvků k vyjádření běžného chování ovládacích prvků. Například použijete vzorec ovládání Vyvolat pro ovládací prvky, které lze vyvolat (jako jsou tlačítka), a vzorec ovládání pro posuvníky pro ovládací prvky, které mají posuvníky (jako jsou seznamy, zobrazení seznamu nebo pole se seznamem). Vzhledem k tomu, že každý vzor ovládacího prvku představuje samostatnou funkci, lze je zkombinovat a popsat úplnou sadu funkcí podporovaných konkrétním ovládacím prvekm.

Poznámka:

Agregované ovládací prvky vytvořené pomocí podřízených ovládacích prvků, které poskytují uživatelské rozhraní pro funkce poskytnuté nadřazeným objektem, by měly implementovat všechny běžné vzory ovládacích prvků, které jsou obvykle přidružené ke každému podřízenému ovládacímu prvku. Naopak stejné vzory ovládacích prvků nemusí být implementovány podřízenými ovládacími prvky.

Komponenty vzoru ovládacích prvků automatizace uživatelského rozhraní

Vzory ovládacích prvků podporují metody, vlastnosti, události a relace potřebné k definování diskrétní části funkčnosti dostupné v ovládacím prvku.

  • Vztah mezi prvkem Automatizace uživatelského rozhraní a jeho nadřazeným prvkem, podřízenými i souběžnými prvky popisuje strukturu elementu ve stromu Automatizace uživatelského rozhraní.

  • Metody umožňují klientům automatizace uživatelského rozhraní manipulovat s ovládacím prvku.

  • Vlastnosti a události poskytují informace o funkcích ovládacího prvku a také informace o stavu ovládacího prvku.

Vzory ovládacích prvků se vztahují k uživatelskému rozhraní jako rozhraní k objektům modelu komponent (COM). V modelu COM můžete dotazovat objekt, který se zeptá, jaká rozhraní podporuje, a pak tato rozhraní použít pro přístup k funkcím. V automatizaci uživatelského rozhraní můžou klienti automatizace uživatelského rozhraní požádat ovládací prvek, který vzory ovládacích prvků podporuje, a pak s ním pracovat prostřednictvím vlastností, metod, událostí a struktur vystavených podporovanými vzory ovládacích prvků. Například u víceřádkového textového pole poskytovatelé automatizace uživatelského rozhraní implementují IScrollProvider. Když klient ví, že AutomationElement podporuje ScrollPattern vzor ovládacího prvku, může použít vlastnosti, metody a události vystavené tímto vzorem ovládacího prvku k manipulaci s ovládacím prvku nebo přístup k informacím o ovládacím prvku.

Poskytovatelé automatizace uživatelského rozhraní a klienti

Poskytovatelé automatizace uživatelského rozhraní implementují vzory ovládacích prvků, které zpřístupňují vhodné chování pro konkrétní část funkcí, kterou ovládací prvek podporuje.

Klienti automatizace uživatelského rozhraní přistupují k metodám a vlastnostem tříd vzorů ovládacích prvků automatizace uživatelského rozhraní a používají je k získání informací o uživatelském rozhraní nebo manipulaci s uživatelským rozhraním. Třídy vzorů ovládacích prvků System.Windows.Automation jsou obsaženy v oboru názvů (například InvokePattern a SelectionPattern).

Klienti používají AutomationElement metody (například AutomationElement.GetCurrentPropertyValue nebo AutomationElement.GetCachedPropertyValue) nebo přístupové objekty CLR (Common Language Runtime) pro přístup k vlastnostem automatizace uživatelského rozhraní ve vzoru. Každá třída vzoru ovládacího prvku má členský parametr (například InvokePattern.Pattern nebo SelectionPattern.Pattern), který identifikuje vzor ovládacího prvku a slouží k načtení tohoto vzoru pro objekt GetCachedPattern jako parametr GetCurrentPattern nebo AutomationElement.

Vzory dynamických ovládacích prvků

Některé ovládací prvky vždy nepodporují stejnou sadu vzorů ovládacích prvků. Vzory ovládacích prvků se považují za podporované, pokud jsou k dispozici pro klienta automatizace uživatelského rozhraní. Například pole pro víceřádkové úpravy umožňuje svislé posouvání pouze v případě, že obsahuje více řádků textu, než lze zobrazit v jeho zobrazitelné oblasti. Posouvání je zakázané, když je odebrán dostatek textu, takže posouvání už není potřeba. V tomto příkladu je vzor ovládacího prvku ScrollPattern dynamicky podporován v závislosti na aktuálním stavu ovládacího prvku (kolik textu je v textovém poli).

Třídy a rozhraní vzorů ovládacích prvků

Následující tabulka popisuje vzory ovládacích prvků automatizace uživatelského rozhraní. Tabulka také uvádí třídy používané klienty automatizace uživatelského rozhraní pro přístup k vzorům ovládacích prvků a také rozhraní používaná poskytovateli automatizace uživatelského rozhraní k jejich implementaci.

Control Pattern třída Rozhraní poskytovatele Popis
DockPattern IDockProvider Používá se pro ovládací prvky, které lze ukotvit v dokovacím kontejneru. Například panely nástrojů nebo palety nástrojů.
ExpandCollapsePattern IExpandCollapseProvider Používá se pro ovládací prvky, které lze rozbalit nebo sbalit. Například položky nabídky v aplikaci, jako je například nabídka Soubor .
GridPattern IGridProvider Používá se pro ovládací prvky, které podporují funkce mřížky, jako je změna velikosti a přechod na zadanou buňku. Například velké zobrazení ikon v Průzkumníku Windows nebo jednoduchých tabulkách bez záhlaví v Microsoft Wordu.
GridItemPattern IGridItemProvider Používá se pro ovládací prvky, které mají buňky v mřížce. Jednotlivé buňky by měly podporovat vzor GridItem. Například každá buňka v zobrazení podrobností Průzkumníka Microsoft Windows.
InvokePattern IInvokeProvider Používá se pro ovládací prvky, které lze vyvolat, například tlačítko.
MultipleViewPattern IMultipleViewProvider Používá se pro ovládací prvky, které můžou přepínat mezi více reprezentacemi stejné sady informací, dat nebo podřízených položek. Například ovládací prvek zobrazení seznamu, kde jsou data dostupná v zobrazení miniatury, dlaždice, ikony, seznamu nebo podrobností.
RangeValuePattern IRangeValueProvider Používá se pro ovládací prvky, které mají rozsah hodnot, které lze použít u ovládacího prvku. Například ovládací prvek číselníku obsahující roky může mít rozsah 1900 až 2010, zatímco jiný ovládací prvek číselníku prezentující měsíce bude mít rozsah 1 až 12.
ScrollPattern IScrollProvider Používá se pro ovládací prvky, které se dají posunout. Například ovládací prvek s aktivními posuvníky, když je k dispozici více informací, než se vejde do viditelné oblasti ovládacího prvku.
ScrollItemPattern IScrollItemProvider Používá se pro ovládací prvky, které mají jednotlivé položky v seznamu, který se posune. Například ovládací prvek seznamu, který má jednotlivé položky v rolovacím seznamu, třeba ovládací prvek typu rozbalovacího seznamu.
SelectionPattern ISelectionProvider Používá se pro ovládací prvky kontejneru výběru. Například seznamová pole a kombinovaná pole.
SelectionItemPattern ISelectionItemProvider Používá se pro jednotlivé položky v ovládacích prvcích kontejneru výběru, jako jsou seznamové a kombo boxy.
TablePattern ITableProvider Používá se pro ovládací prvky, které mají mřížku a informace o záhlaví. Například listy aplikace Microsoft Excel.
TableItemPattern ITableItemProvider Používá se pro položky v tabulce.
TextPattern ITextProvider Slouží k úpravám ovládacích prvků a dokumentů, které zveřejňují textové informace.
TogglePattern IToggleProvider Používá se pro ovládací prvky, kde se dá přepnout stav. Například zaškrtávací políčka a položky nabídky s možností zaškrtnutí.
TransformPattern ITransformProvider Používá se pro ovládací prvky, které se dají měnit, přesouvat a otáčet. Typické použití řídicího vzoru Transformace jsou v návrhářích, formulářích, grafických editorech a aplikacích kreslení.
ValuePattern IValueProvider Umožňuje klientům získat nebo nastavit hodnotu u ovládacích prvků, které nepodporují rozsah hodnot. Například komponenta pro výběr data a času.
WindowPattern IWindowProvider Zveřejňuje informace specifické pro okna, základní koncept operačního systému Microsoft Windows. Příklady ovládacích prvků, které jsou okna, zahrnují okna aplikací nejvyšší úrovně (Microsoft Word, Microsoft Windows Explorer atd.), podřízená okna s více dokumenty (MDI) a dialogová okna.

Viz také