Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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í