Markieren Sie das Kontrollkästchen Englisch, um die englische Version dieses Artikels anzuzeigen. Sie können den englischen Text auch in einem Popup-Fenster einblenden, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

UI Automation Overview

 
System_CAPS_noteHinweis

Diese Dokumentation ist für .NET Framework-Entwickler vorgesehen, die die verwalteten Benutzeroberflächenautomatisierung-Klassen verwenden möchten, die im System.Windows.Automation-Namespace definiert sind. Aktuelle Informationen zur Benutzeroberflächenautomatisierung finden Sie auf der Seite zur Windows-Automatisierungs-API: UI-Automatisierung.

Microsoft-UI-Automatisierung ist das neue Barrierefreiheit-Framework für Microsoft Windows. Es ist für alle Betriebssysteme verfügbar, die Windows Presentation Foundation (WPF) unterstützen.

Die Benutzeroberflächenautomatisierung stellt programmgesteuerten Zugriff auf die meisten Benutzeroberfläche (User Interface, UI) auf dem Desktop zur Verfügung, sodass Hilfstechnologieprodukte, z. B. die Bildschirmsprachausgabe, Informationen über die UI für die Endbenutzer bereitstellen und die UI mit anderen Verfahren als Standardeingaben ändern können.Benutzeroberflächenautomatisierung ermöglicht außerdem die Interaktion von automatisierten Testskripts mit der UI.

System_CAPS_noteHinweis

Benutzeroberflächenautomatisierung ermöglicht keine Kommunikation zwischen Prozessen, die von anderen Benutzern durch den Befehl Ausführen als gestartet werden.

Benutzeroberflächenautomatisierungs-Clientanwendungen können mit der Gewissheit geschrieben werden, dass sie mit verschiedenen Frameworks funktionieren. Der Benutzeroberflächenautomatisierung-Kern maskiert alle Unterschiede in den Frameworks, die den verschiedenen Komponenten von UI zugrunde liegen. Beispielsweise sind die Content-Eigenschaft einer WPF-Schaltfläche, die Caption-Eigenschaft einer Win32-Schaltfläche und die ALT-Eigenschaft eines HTML-Bildes alle nur einer einzelnen Eigenschaft, Name, in der Benutzeroberflächenautomatisierung-Ansicht zugewiesen.

Benutzeroberflächenautomatisierung bietet volle Funktionalität in Windows Vista, Microsoft Windows XP und Windows Server 2003.

Benutzeroberflächenautomatisierungs-Anbieter bieten durch einen integrierten Überbrückungsdienst Unterstützung für Microsoft Active Accessibility-Clientanwendungen.

Benutzeroberflächenautomatisierung verfügt über vier Hauptkomponenten, wie in der folgenden Tabelle aufgeführt.

Komponente

Beschreibung

Anbieter-API (UIAutomationProvider.dll und UIAutomationTypes.dll)

Eine Reihe von Schnittstellendefinitionen, die von Benutzeroberflächenautomatisierungs-Anbietern implementiert werden, sowie Objekte, die Informationen über UI-Elemente bereitstellen und auf Programmeingaben reagieren.

Client-API (UIAutomationClient.dll und UIAutomationTypes.dll)

Eine Reihe von Typen für verwalteten Code, der es Benutzeroberflächenautomatisierungs-Clientanwendungen ermöglicht, Informationen über UI abzurufen und Eingaben an Steuerelemente zu senden.

UiAutomationCore.dll

Der zugrunde liegende Code (gelegentlich als Benutzeroberflächenautomatisierung-Code bezeichnet), der die Kommunikation zwischen Anbietern und Clients verwaltet.

UIAutomationClientsideProviders.dll

Ein Satz von Benutzeroberflächenautomatisierungs-Anbietern für Standard-Legacysteuerelemente. (WPF-Steuerelemente verfügen über systemeigene Unterstützung für Benutzeroberflächenautomatisierung.) Diese Unterstützung steht Clientanwendungen automatisch zur Verfügung.

Aus Sicht des Softwareentwicklers gibt es zwei Möglichkeiten zum Verwenden von Benutzeroberflächenautomatisierung: entweder kann eine Unterstützung für benutzerdefinierte Steuerelemente mithilfe der Anbieter-API erstellt werden oder Anwendungen, die den Benutzeroberflächenautomatisierung-Kern verwenden, um mit UI-Elementen mithilfe der Client-API zu kommunizieren. Abhängig von Ihren Schwerpunkten sollten Sie auf verschiedene Teile der Dokumentation zugreifen. In den folgenden Abschnitten können Sie mehr über die Konzepte erfahren und sich praktisches Wissen aneignen.

Abschnitt

Inhalt

Zielgruppe

UI Automation Fundamentals (dieser Abschnitt)

Allgemeine Übersichten über die Konzepte.

Alle

UI Automation Providers for Managed Code

Übersichten und Hilfethemen zum Verwenden der Anbieter-API.

Entwickler von Steuerelementen.

UI Automation Clients for Managed Code

Übersichten und Hilfethemen zum Verwenden der Client-API.

Entwickler von Clientanwendungen.

UI Automation Control Patterns

Informationen zum Implementieren von Steuerelementmustern durch Anbieter und den Funktionalitäten, die Clients zur Verfügung stehen.

Alle

UI Automation Text Pattern

Informationen zum Implementieren des Text-Steuerelementmusters durch Anbieter und den Funktionalitäten, die Clients zur Verfügung stehen.

Alle

UI Automation Control Types

Informationen über die Eigenschaften und Steuerelementmuster, die von verschiedenen Steuerelementtypen unterstützt werden.

Alle

In der folgenden Tabelle werden Benutzeroberflächenautomatisierung-Namespaces, die DLLs, die sie enthalten, und die sie verwendende Zielgruppe, aufgelistet.

namespace

DLLs, auf die verwiesen wird

Zielgruppe

System.Windows.Automation

UIAutomationClientUIAutomationTypes

Benutzeroberflächenautomatisierungs-Cliententwickler: wird zum Suchen nach AutomationElement-Objekten, zum Registrieren von Benutzeroberflächenautomatisierung-Ereignissen und zum Arbeiten mit Benutzeroberflächenautomatisierung-Steuerelementmustern verwendet.

System.Windows.Automation.Provider

UIAutomationProviderUIAutomationTypes

Entwickler von Benutzeroberflächenautomatisierungs-Anbietern für andere Frameworks als WPF.

System.Windows.Automation.Text

UIAutomationClientUIAutomationTypes

Entwickler von Benutzeroberflächenautomatisierungs-Anbietern für Frameworks, die über WPF hinausgehen. Dieser wird zum Implementieren von TextPattern-Steuerelementmustern verwendet.

System.Windows.Automation.Peers

PresentationFramework

Entwickler von Benutzeroberflächenautomatisierungs-Anbietern für WPF.

Benutzeroberflächenautomatisierung macht UI-Elemente für Clientanwendungen vollständig als AutomationElement verfügbar. Elemente sind in einer Baumstruktur, mit dem Desktop als Stammelement, enthalten. Clients können die „Rohdatenansicht“ der Struktur als „Steuerelementansicht“ oder „Inhaltsansicht“ filtern. Anwendungen können auch benutzerdefinierte Ansichten erstellen.

AutomationElement-Objekte machen allgemeine Eigenschaften der von ihnen dargestellten UI-Elemente verfügbar. Eine dieser Eigenschaften ist der „Steuerelementtyp“, der die grundlegende Darstellung und Funktionalität als einzelne Entität definiert, z. B. als Schaltfläche oder Kontrollkästchen.

Darüber hinaus machen Elemente Steuerelementmuster verfügbar, die ihren Steuerelementtypen entsprechende Eigenschaften bereitstellen. Steuerelementmuster machen gleichzeitig Methoden verfügbar, die es Clients ermöglichen, weitere Informationen über das Element zu erlangen und Eingaben bereitzustellen.

System_CAPS_noteHinweis

Es gibt keine 1:1-Entsprechung zwischen Steuerelementtypen und Steuerelementmustern. Ein Steuerelementmuster kann von mehreren Steuerelementtypen unterstützt werden, und ein Steuerelement kann mehrere Steuerelementmuster unterstützen, von denen jedes einen anderen Aspekt des Verhaltens verfügbar macht. Ein Kombinationsfeld hat beispielsweise mindestens zwei Steuerelementmuster: eines mit der Fähigkeit zum Erweitern und Reduzieren und ein anderes, das den Auswahlmechanismus darstellt. Weitere Informationen finden Sie unter UI Automation Control Types.

Benutzeroberflächenautomatisierung gibt durch Ereignisse Informationen an Clientanwendungen weiter. Im Gegensatz zu WinEvents basieren Benutzeroberflächenautomatisierung-Ereignisse nicht auf einem Übertragungsmechanismus.Benutzeroberflächenautomatisierung-Clients melden sich für bestimmte Ereignisbenachrichtigungen an und können anfordern, dass spezifische Benutzeroberflächenautomatisierung-Eigenschaften und Steuerelementmuster-Informationen an den Ereignishandler übergeben werden. Außerdem enthält ein Benutzeroberflächenautomatisierung-Ereignis einen Verweis auf das Element, das es ausgelöst hat. Anbieter können die Leistung verbessern, indem sie Ereignisse selektiv abhängig davon auslösen, ob Clients zuhören.

Anzeigen: