Übersicht über Steuerelementmuster für Benutzeroberflächenautomatisierung

HinweisHinweis

Diese Dokumentation ist für .NET Framework-Entwickler vorgesehen, die die verwalteten UI Automation-Klassen verwenden möchten, die im System.Windows.Automation-Namespace definiert sind.Aktuelle Informationen zu UI Automation finden Sie unter Windows Automation API: UI Automation.

In dieser Übersicht werden Microsoft UI Automation-Steuerelementmuster eingeführt. Mit Steuerelementmustern können Funktionen von Steuerelementen unabhängig von deren Typ oder Darstellung kategorisiert und verfügbar gemacht werden.

UI Automation stellt allgemeine Steuerelementverhalten mithilfe von Steuerelementmustern dar. Sie verwenden beispielsweise das Steuerelementmuster Invoke für Steuerelemente, die aufgerufen werden können (z. B. Schaltflächen), und das Steuerelementmuster Scroll für Steuerelemente, die über Bildlaufleisten verfügen (z. B. Listenfelder, Listenanzeigen oder Kombinationsfelder). Da mit jedem Steuerelementmuster eine separate Funktion dargestellt wird, können sie kombiniert werden, um den gesamten von einem bestimmten Steuerelement unterstützten Funktionsumfang zu beschreiben.

HinweisHinweis

Aggregatsteuerelemente – erstellt mit untergeordneten Steuerelementen, die user interface (UI) für Funktionen zur Verfügung stellen, die vom übergeordneten Steuerelement verfügbar gemacht werden – sollten alle Steuerelementmuster implementieren, die normalerweise den untergeordneten Steuerelementen zugewiesen sind.Diese Steuerelementmuster müssen jedoch nicht von den untergeordneten Steuerelementen implementiert werden.

 

Dieses Thema enthält folgende Abschnitte.

  • Komponenten der Steuerelementmuster für Benutzeroberflächenautomatisierung
  • Benutzeroberflächenautomatisierungs-Anbieter und -Clients
  • Dynamische Steuerelementmuster
  • Klassen und Schnittstellen von Steuerelementmustern
  • Verwandte Abschnitte

 

Komponenten der Steuerelementmuster für Benutzeroberflächenautomatisierung

Steuerelementmuster unterstützen die Methoden, Eigenschaften, Ereignisse und Beziehungen, die für die Definition einer einzelnen Funktion eines Steuerelements erforderlich sind.

  • Mit der Beziehung zwischen einem Benutzeroberflächenautomatisierungs-Element und dem übergeordneten Element sowie den unter- und nebengeordneten Elementen wird die Elementstruktur innerhalb der UI Automation-Struktur beschrieben.

  • Die Methoden ermöglichen es Benutzeroberflächenautomatisierungs-Clients, das Steuerelement zu bearbeiten.

  • Die Eigenschaften und Ereignisse stellen Informationen zu den Funktionen des Steuerelementmusters sowie zum Status des Steuerelements zur Verfügung.

Steuerelementmuster beziehen sich in gleicher Weise auf UI, wie sich Schnittstellen auf Component Object Model (COM)-Objekte beziehen. In COM können Sie abfragen, welche Schnittstellen von einem Objekt unterstützt werden, und dann mithilfe dieser Schnittstellen auf die Funktionen zugreifen. In UI Automation kann von Benutzeroberflächenautomatisierungs-Clients abgefragt werden, welche Steuerelementmuster von einem bestimmten Steuerelement unterstützt werden, und anschließend mithilfe der von den unterstützten Steuerelementmustern verfügbar gemachten Eigenschaften, Methoden, Ereignissen und Strukturen mit dem Steuerelement interagiert werden. Bei einem mehrzeiligen Bearbeitungsfeld implementieren Benutzeroberflächenautomatisierungs-Anbieter beispielsweise IScrollProvider. Wenn einem Client bekannt ist, dass AutomationElement das ScrollPattern-Steuerelementmuster unterstützt, kann der Client mithilfe der Eigenschaften, Methoden und Ereignisse, die von diesem Steuerelementmuster verfügbar gemacht werden, das Steuerelement ändern oder auf Informationen über das Steuerelement zugreifen.

Benutzeroberflächenautomatisierungs-Anbieter und -Clients

Benutzeroberflächenautomatisierungs-Anbieter implementieren Steuerelementmuster, um das entsprechende Verhalten für eine bestimmte Funktion verfügbar zu machen, die vom Steuerelement unterstützt wird.

Benutzeroberflächenautomatisierungs-Clients greifen auf Methoden und Eigenschaften der UI Automation-Klassen von Steuerelementmustern zu, um mit ihnen Informationen über die UI abzurufen oder die UI zu ändern. Diese Klassen von Steuerelementmustern befinden sich im System.Windows.Automation-Namespace (z. B. InvokePattern und SelectionPattern).

Clients greifen mithilfe von AutomationElement-Methoden (z. B. AutomationElement.GetCurrentPropertyValue oder AutomationElement.GetCachedPropertyValue) oder der common language runtime (CLR)-Accessoren auf die UI Automation-Eigenschaften eines Musters zu. Jede Klasse von Steuerelementmustern verfügt über einen Feldmember (z. B. InvokePattern.Pattern  oder SelectionPattern.Pattern), mit dem das Steuerelementmuster identifiziert wird und der als Parameter an GetCachedPattern oder GetCurrentPattern übergeben werden kann, um das Muster für AutomationElement abzurufen.

Dynamische Steuerelementmuster

Einige Steuerelemente unterstützen nicht immer den gleichen Satz von Steuerelementmustern. Steuerelementmuster gelten als unterstützt, wenn sie für einen Benutzeroberflächenautomatisierungs-Client zur Verfügung stehen. Ein mehrzeiliges Bearbeitungsfeld ermöglicht beispielsweise nur dann einen vertikalen Bildlauf, wenn es mehr Textzeilen enthält, als im Anzeigebereich angezeigt werden können. Die Bildlauffunktion wird deaktiviert, wenn so viel Text entfernt wurde, dass kein Bildlauf mehr erforderlich ist. In diesem Beispiel wird das Steuerelementmuster ScrollPattern je nach aktuellem Zustand des Steuerelements (d. h. je nach Textmenge im Bearbeitungsfeld) dynamisch unterstützt.

Klassen und Schnittstellen von Steuerelementmustern

In der folgenden Tabelle werden die UI Automation-Steuerelementmuster beschrieben. Außerdem werden in dieser Tabelle die Klassen aufgeführt, die von Benutzeroberflächenautomatisierungs-Clients für den Zugriff auf die Steuerelementmuster verwendet werden, sowie die Schnittstellen, mit denen die Steuerelementmuster von Benutzeroberflächenautomatisierungs-Anbietern implementiert werden.

Steuerelementmuster-Klasse

Anbieterschnittstelle

Beschreibung

DockPattern

IDockProvider

Wird für Steuerelemente verwendet, die an einen Andockcontainer angedockt werden können. Z. B. Symbolleisten oder Toolpaletten.

ExpandCollapsePattern

IExpandCollapseProvider

Wird für Steuerelemente verwendet, die erweitert oder reduziert werden können. Z. B. Menüelemente in einer Anwendung, wie das Menü Datei.

GridPattern

IGridProvider

Wird für Steuerelemente verwendet, die Rasterfunktionen wie z. B. Größenanpassung oder Verschieben in eine festgelegte Zelle unterstützen. Z. B. die große Symbolansicht in Windows-Explorer oder einfache Tabellen ohne Header in Microsoft Word.

GridItemPattern

IGridItemProvider

Wird für Steuerelemente verwendet, die Zellen innerhalb von Rastern aufweisen. Die einzelnen Zellen sollten das Muster GridItem unterstützen. Z. B. jede Zelle in der Microsoft Windows Explorer-Detailansicht.

InvokePattern

IInvokeProvider

Wird für Steuerelemente verwendet, die aufgerufen werden können, z. B. Schaltflächen.

MultipleViewPattern

IMultipleViewProvider

Wird für Steuerelemente verwendet, die zwischen mehreren Darstellungen derselben Informationen, Daten oder untergeordneten Steuerelemente wechseln können. Zum Beispiel ein ListView-Steuerelement, in dem Daten in Miniatur-, Kachel-, Symbol-, Listen- oder Detailansicht verfügbar sind.

RangeValuePattern

IRangeValueProvider

Wird für Steuerelemente verwendet, die über einen auf das Steuerelement anwendbaren Wertebereich verfügen. Ein Drehfeld-Steuerelement mit Werten für Jahre kann beispielsweise einen Bereich von 1900 bis 2010 haben, während für ein anderes Drehfeld-Steuerelement für Monate der Bereich 1 bis 12 festgelegt ist.

ScrollPattern

IScrollProvider

Wird für Steuerelemente verwendet, in denen ein Bildlauf ausgeführt werden kann. Z. B. ein Steuerelement mit Bildlaufleisten, die nur aktiv sind, wenn mehr Informationen vorhanden sind, als im Anzeigebereich des Steuerelements angezeigt werden können.

ScrollItemPattern

IScrollItemProvider

Wird für Steuerelemente verwendet, die einzelne Elemente in einer Liste anzeigen, in der ein Bildlauf ausgeführt werden kann. Z. B. ein Listensteuerelement mit einzelnen Elementen in der Bildlaufliste, beispielsweise ein Kombinationsfeld-Steuerelement.

SelectionPattern

ISelectionProvider

Wird für Auswahlcontainer-Steuerelemente verwendet. Z. B. Listen- und Kombinationsfelder.

SelectionItemPattern

ISelectionItemProvider

Wird für einzelne Elemente in Auswahlcontainer-Steuerelementen verwendet, z. B. Listen- und Kombinationsfelder.

TablePattern

ITableProvider

Wird für Steuerelemente verwendet, die sowohl über ein Raster als auch Headerinformationen verfügen. Z. B. Microsoft Excel-Arbeitsblätter.

TableItemPattern

ITableItemProvider

Wird für Elemente in einer Tabelle verwendet.

TextPattern

ITextProvider

Wird für Bearbeitungssteuerelemente und Dokumente verwendet, die Textinformationen verfügbar machen.

TogglePattern

IToggleProvider

Wird für Steuerelemente verwendet, deren Zustand umgeschaltet werden kann. Z. B. Kontrollkästchen und aktivierbare Menüeinträge.

TransformPattern

ITransformProvider

Wird für Steuerelemente verwendet, deren Größe geändert werden kann, sowie für Steuerelemente, die verschoben und gedreht werden können. Das Steuerelementmuster Transform wird in der Regel in Designern, Formularen, Grafik-Editoren und Zeichnungsanwendung verwendet.

ValuePattern

IValueProvider

Ermöglicht Clients das Abrufen oder Festlegen eines Werts für Steuerelemente, die Wertebereiche nicht unterstützen. Z. B. eine Datums-/Zeitauswahl.

WindowPattern

IWindowProvider

Macht fensterspezifische Informationen verfügbar. Dies ist ein grundlegendes Konzept im Microsoft Windows-Betriebssystem. Zu den Beispielen für Steuerelemente, die Fenster sind, zählen Anwendungsfenster der obersten Ebene (Microsoft Word, Microsoft Windows Explorer usw.), untergeordnete multiple-document interface (MDI)-Fenster und Dialogfelder.

Siehe auch

Konzepte

Steuerelementmuster für Benutzeroberflächenautomatisierung für Clients

Zuordnen von Steuerelementmustern für Benutzeroberflächenautomatisierungs-Clients

Übersicht über die Benutzeroberflächenautomatisierung

Benutzeroberflächenautomatisierungs-Eigenschaften für Clients

Benutzeroberflächenautomatisierungs-Ereignisse für Clients