Přehled zprostředkovatelů 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 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.

model UI Automation poskytovatelé umožňují ovládacím prvkům komunikovat s klientskými aplikacemi model UI Automation. Obecně platí, že každý ovládací prvek nebo jiný odlišný prvek uživatelského rozhraní je reprezentován poskytovatelem. Zprostředkovatel zveřejňuje informace o prvku a volitelně implementuje vzory ovládacích prvků, které klientské aplikaci umožňují interakci s ovládacím prvkem.

Klientské aplikace obvykle nemusí pracovat přímo se zprostředkovateli. Většina standardních ovládacích prvků v aplikacích, které používají architektury Win32, model Windows Forms nebo Windows Presentation Foundation (WPF), jsou automaticky zpřístupněny systému model UI Automation. Aplikace, které implementují vlastní ovládací prvky, mohou také implementovat poskytovatele model UI Automation pro tyto ovládací prvky a klientské aplikace nemusí provádět žádné zvláštní kroky pro získání přístupu k nim.

Toto téma obsahuje přehled o tom, jak vývojáři ovládacích prvků implementují model UI Automation zprostředkovatele, zejména pro ovládací prvky v systémech model Windows Forms a Win32.

Typy poskytovatelů

model UI Automation poskytovatelé spadají do dvou kategorií: poskytovatelé na straně klienta a poskytovatelé na straně serveru.

Poskytovatelé na straně klienta

Poskytovatelé na straně klienta jsou implementováni model UI Automation klienty ke komunikaci s aplikací, která nepodporuje nebo plně nepodporuje, model UI Automation. Zprostředkovatelé na straně klienta obvykle komunikují se serverem přes hranice procesu odesíláním a příjmem zpráv systému Windows.

Vzhledem k tomu, že model UI Automation poskytovatelé ovládacích prvků v systému Win32, model Windows Forms nebo WPF jsou dodávány jako součást operačního systému, klientské aplikace jen zřídka musí implementovat vlastní poskytovatele a tento přehled je dále nepokrývá.

Zprostředkovatelé na straně serveru

Zprostředkovatelé na straně serveru jsou implementovány vlastními ovládacími prvky nebo aplikacemi, které jsou založené na jiné platformě uživatelského rozhraní než Win32, model Windows Forms nebo WPF.

Poskytovatelé na straně serveru komunikují s klientskými aplikacemi v rámci hranice procesu tím, že zveřejňují rozhraní model UI Automation základního systému, který zase obsluhuje požadavky klientů.

Koncepty poskytovatele model UI Automation

Tato část obsahuje stručné vysvětlení některých klíčových konceptů, které potřebujete pochopit, aby bylo možné implementovat poskytovatele model UI Automation.

Elementy

model UI Automation prvky jsou části uživatelského rozhraní,které jsou viditelné pro model UI Automation klienty. Mezi příklady patří okna aplikací, podokna, tlačítka, popisy tlačítek, seznamy a položky seznamu.

model UI Automation prvky jsou klientům zpřístupněny jako strom model UI Automation. model UI Automation strom vytvoří tak, že přejde z jednoho prvku do druhého. Navigace je povolena poskytovateli pro každý prvek, z nichž každý může odkazovat na nadřazený, na stejné úrovni a podřízené položky.

Další informace o klientském zobrazení stromu model UI Automation najdete v tématu model UI Automation Strom přehledu.

Zobrazení

Klient vidí strom model UI Automation ve třech hlavních zobrazeních, jak je znázorněno v následující tabulce.

Zobrazení Popis
Nezpracované zobrazení Obsahuje všechny prvky.
Zobrazení ovládacího prvku Obsahuje prvky, které jsou ovládacími prvky.
Zobrazení obsahu Obsahuje prvky, které mají obsah.

Další informace o zobrazení klienta stromu model UI Automation naleznete v tématu model UI Automation Strom přehledu.

Je zodpovědností implementace zprostředkovatele definovat prvek jako prvek obsahu nebo ovládací prvek. Prvky ovládacího prvku mohou nebo nemusí být také prvky obsahu, ale všechny prvky obsahu jsou ovládací prvky.

Architektury

Architektura je komponenta, která spravuje podřízené ovládací prvky, testování hit-testing a vykreslování v oblasti obrazovky. Například okno Win32, často označované jako HWND, může sloužit jako architektura, která obsahuje více model UI Automation prvků, jako je řádek nabídek, stavový řádek a tlačítka.

Ovládací prvky kontejneru Win32, jako jsou seznamová pole a stromová zobrazení, se považují za architektury, protože obsahují vlastní kód pro vykreslování podřízených položek a provádění testování výsledků na nich. Naproti tomu seznam WPF není architektura, protože vykreslování a testování hit-testování zpracovává okno obsahující WPF.

Uživatelské rozhraní v aplikaci může být tvořeno různými architekturami. Například okno aplikace HWND může obsahovat dynamický kód HTML (DHTML), který zase obsahuje součást, například pole se seznamem v HWND.

Fragmenty

Fragment je kompletní podstrom prvků z konkrétní architektury. Element v kořenovém uzlu podstromu se nazývá kořen fragmentu. Kořen fragmentu nemá nadřazený objekt, ale je hostovaný v některé jiné rozhraní, obvykle v okně Win32 (HWND).

Hostitelé

Kořenový uzel každého fragmentu musí být hostovaný v elementu, obvykle v okně Win32 (HWND). Výjimkou je desktop, který není hostovaný v žádném jiném prvku. Hostitelem vlastního ovládacího prvku je HWND samotného ovládacího prvku, nikoli okno aplikace ani žádné jiné okno, které může obsahovat skupiny ovládacích prvků nejvyšší úrovně.

Hostitel fragmentu hraje důležitou roli při poskytování model UI Automation služeb. Umožňuje navigaci do kořene fragmentu a poskytuje některé výchozí vlastnosti, aby je vlastní zprostředkovatel nemusel implementovat.

Viz také