Sdílet prostřednictvím


Přehled 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í.

Microsoft UI Automation je nová architektura přístupnosti pro Microsoft Windows, která je dostupná ve všech operačních systémech, které podporují Windows Presentation Foundation (WPF).

Automatizace uživatelského rozhraní poskytuje programový přístup k většině prvků uživatelského rozhraní (UI) na ploše, což umožňuje technologiím usnadnění, jako jsou čtečky obrazovky, poskytovat informace o uživatelském rozhraní koncovým uživatelům a manipulovat s uživatelským rozhraním jinými prostředky než standardním vstupem. Automatizace uživatelského rozhraní také umožňuje automatizované testovací skripty pracovat s uživatelským rozhraním.

Poznámka:

Automatizace uživatelského rozhraní neumožňuje komunikaci mezi procesy spuštěnými různými uživateli prostřednictvím příkazu Spustit jako .

Klientské aplikace pro automatizaci uživatelského rozhraní je možné psát s jistotou, že budou fungovat na více architekturách. Jádro automatizace uživatelského rozhraní maskuje všechny rozdíly v architekturách, které tvoří základ různých částí uživatelského rozhraní. Například Content vlastnost tlačítka WPF, Caption vlastnost tlačítka Win32 a ALT vlastnost obrázku HTML jsou mapovány na jednu vlastnost, Namev zobrazení Automatizace uživatelského rozhraní.

Automatizace uživatelského rozhraní poskytuje úplné funkce v podporovaných operačních systémech Windows s rozhraním .NET Framework (viz systémové požadavky rozhraní .NET Framework nebo verze .NET Core počínaje rozhraním .NET Core 3.0.

Poskytovatelé automatizace uživatelského rozhraní nabízejí podporu klientských aplikací Microsoft Active Accessibility prostřednictvím integrované služby přemostění.

Poskytovatelé a klienti

Automatizace uživatelského rozhraní má čtyři hlavní komponenty, jak je znázorněno v následující tabulce.

Součást Popis
Rozhraní API zprostředkovatele (UIAutomationProvider.dll a UIAutomationTypes.dll) Sada definic rozhraní implementovaných poskytovateli automatizace uživatelského rozhraní, objekty, které poskytují informace o prvcích uživatelského rozhraní a reagují na programový vstup.
Klientské rozhraní API (UIAutomationClient.dll a UIAutomationTypes.dll) Sada typů pro spravovaný kód, který umožňuje klientským aplikacím automatizace uživatelského rozhraní získat informace o uživatelském rozhraní a odesílat vstup do ovládacích prvků.
UiAutomationCore.dll Základní kód (někdy označovaný jako jádro automatizace uživatelského rozhraní), který zpracovává komunikaci mezi poskytovateli a klienty.
UIAutomationClientsideProviders.dll Sada zprostředkovatelů automatizace uživatelského rozhraní pro standardní starší ovládací prvky (Ovládací prvky WPF mají nativní podporu pro automatizaci uživatelského rozhraní.) Tato podpora je automaticky dostupná pro klientské aplikace.

Z pohledu vývojáře softwaru existují dva způsoby použití automatizace uživatelského rozhraní: vytvoření podpory vlastních ovládacích prvků (pomocí rozhraní API zprostředkovatele) a vytváření aplikací, které ke komunikaci s prvky uživatelského rozhraní (pomocí klientského rozhraní API) používají jádro automatizace uživatelského rozhraní. V závislosti na vašem zaměření byste měli odkazovat na různé části dokumentace. Další informace o konceptech a praktické znalosti získáte v následujících částech.

Oddíl Předmět Obecenstvo
Základy automatizace uživatelského rozhraní (tato část) Široké přehledy konceptů Všichni.
zprostředkovatelé automatizace uživatelského rozhraní pro spravovaný kód Přehledy a postupy, které vám pomůžou používat rozhraní API zprostředkovatele. Kontrolovat vývojáře.
Klienti automatizace uživatelského rozhraní pro spravovaný kód Přehledy a postupy, které vám pomůžou používat rozhraní API klienta. Vývojáři klientských aplikací.
Vzory ovládacích prvků automatizace uživatelského rozhraní Informace o tom, jak by poskytovatelé měli implementovat vzory kontroly a jaké funkce jsou pro klienty k dispozici. Všichni.
Vzor textu automatizace uživatelského rozhraní Informace o tom, jak má být model ovládacích prvků Text implementován poskytovateli a jaké funkce jsou k dispozici pro klienty. Všichni.
Typy ovládacích prvků automatizace uživatelského rozhraní Informace o vlastnostech a vzorech ovládacích prvků podporovaných různými typy ovládacích prvků Všichni.

Následující tabulka uvádí obory názvů automatizace uživatelského rozhraní, knihovny DLL, které je obsahují, a cílovou skupinu, která je používá.

Namespace Odkazované knihovny DLL Obecenstvo
System.Windows.Automation UIAutomationClientUIAutomationTypes Vývojáři klientů automatizace uživatelského rozhraní; slouží k hledání AutomationElement objektů, registraci událostí automatizace uživatelského rozhraní a práci se vzory ovládacích prvků automatizace uživatelského rozhraní.
System.Windows.Automation.Provider UIAutomationProviderUIAutomationTypes Vývojáři zprostředkovatelů automatizace uživatelského rozhraní pro architektury jiné než WPF
System.Windows.Automation.Text UIAutomationClientUIAutomationTypes Vývojáři zprostředkovatelů automatizace uživatelského rozhraní pro architektury jiné než WPF; používá se k implementaci vzoru ovládacího prvku TextPattern.
System.Windows.Automation.Peers PresentationFramework Vývojáři zprostředkovatelů automatizace uživatelského rozhraní pro WPF

Model automatizace uživatelského rozhraní

Automatizace uživatelského rozhraní zveřejňuje všechny části uživatelského rozhraní klientským aplikacím jako .AutomationElement Prvky jsou obsaženy ve stromové struktuře s pracovní plochou jako kořenový prvek. Klienti mohou filtrovat zobrazení stromu jako kontrolní zobrazení nebo obsahové zobrazení. Aplikace můžou také vytvářet vlastní zobrazení.

AutomationElement objekty zpřístupňují společné vlastnosti prvků uživatelského rozhraní, které představují. Jednou z těchto vlastností je typ ovládacího prvku, který definuje jeho základní vzhled a funkčnost jako jednu rozpoznatelnou entitu: například tlačítko nebo zaškrtávací políčko.

Prvky navíc zveřejňují vzory ovládacích prvků, které poskytují vlastnosti specifické pro jejich typy ovládacích prvků. Řídicí vzory také zveřejňují metody, které klientům umožňují získat další informace o prvku a poskytnout vstup.

Poznámka:

Mezi typy ovládacích prvků a vzory ovládacích prvků neexistuje korespondence 1:1. Řídicí vzor může být podporován více typy ovládacích prvků a ovládací prvek může podporovat více řídicích vzorů, z nichž každá zveřejňuje různé aspekty jeho chování. Kombinovaný seznam má například minimálně dva vzory ovládacích prvků: jeden, který představuje schopnost rozbalit a sbalit, a druhý, který představuje mechanismus výběru. Konkrétní informace najdete v tématu Typy ovládacích prvků automatizace uživatelského rozhraní.

Automatizace uživatelského rozhraní také poskytuje informace klientským aplikacím prostřednictvím událostí. Na rozdíl od WinEvents nejsou události automatizace uživatelského rozhraní založené na principu všesměrového vysílání. Klienti automatizace uživatelského rozhraní se registrují pro konkrétní oznámení událostí a mohou požádat o předání konkrétních vlastností automatizace uživatelského rozhraní a informací o vzoru řízení do obslužných rutin událostí. Kromě toho událost automatizace uživatelského rozhraní obsahuje odkaz na prvek, který ho vyvolal. Poskytovatelé můžou zvýšit výkon selektivním vyvoláním událostí v závislosti na tom, jestli některý klient naslouchá.

Viz také

  • Přehled stromu automatizace uživatelského rozhraní
  • Přehled vzorů ovládacích prvků automatizace uživatelského rozhraní
  • Přehled vlastností automatizace uživatelského rozhraní
  • Přehled událostí automatizace uživatelského rozhraní
  • Přehled zabezpečení automatizace uživatelského rozhraní