Freigeben über


Übersicht über Steuerelementmuster für Benutzeroberflächenautomatisierung

Hinweis

Diese Dokumentation richtet sich an .NET Framework-Entwickler, die die verwalteten Benutzeroberflächenautomatisierungs-Klassen verwenden möchten, die im System.Windows.Automation-Namespace definiert sind. Die neuesten Informationen zur Benutzeroberflächenautomatisierung finden Sie unter Windows Automation API: Benutzeroberflächenautomatisierung.

In dieser Übersicht werden Steuerelementmuster für die Microsoft-Benutzeroberflächenautomatisierung vorgestellt. Steuerelementmuster bieten eine Möglichkeit, die Funktionalität eines Steuerelements unabhängig vom Steuerelementtyp oder der Darstellung des Steuerelements zu kategorisieren und verfügbar zu machen.

Die Benutzeroberflächenautomatisierung verwendet Steuerelementmuster, um allgemeine Steuerelementverhalten darzustellen. Sie verwenden beispielsweise das Aufruf-Steuerelementmuster für Steuerelemente, die aufgerufen werden können (z. B. Schaltflächen) und das Scroll-Steuerelementmuster für Steuerelemente mit Bildlaufleisten (z. B. Listenfelder, Listenansichten oder Kombinationsfelder). Da jedes Steuerelementmuster eine separate Funktionalität darstellt, können sie kombiniert werden, um den vollständigen Satz von Funktionen zu beschreiben, die von einem bestimmten Steuerelement unterstützt werden.

Hinweis

Zusammengesetzte Steuerelemente – Steuerelemente, die mit untergeordneten Steuerelementen erstellt wurden, die die Benutzeroberfläche für Funktionalität bereitstellen, die vom übergeordneten Steuerelement verfügbar gemacht wird – sollten alle Steuerelementmuster implementieren, die normalerweise den untergeordneten Steuerelementen zugewiesen sind. Dagegen ist es nicht erforderlich, dass diese selben Steuerelementmuster durch die untergeordneten Steuerelemente implementiert werden.

Komponenten der Steuerelementmuster für Benutzeroberflächenautomatisierung

Steuerelementmuster unterstützen die Methoden, Eigenschaften, Ereignisse und Beziehungen, die erforderlich sind, um eine diskrete Funktionalität zu definieren, die in einem Steuerelement verfügbar ist.

  • Die Beziehung zwischen einem Benutzeroberflächenautomatisierungs-Element und seinem übergeordneten Element, untergeordneten Elementen und Geschwisterelementen beschreibt die Struktur des Elements innerhalb des Benutzeroberflächenautomatisierungs-Baums.

  • Mit den Methoden können Benutzeroberflächenautomatisierungs-Clients das Steuerelement bearbeiten.

  • Die Eigenschaften und Ereignisse enthalten Informationen über die Funktionalität des Steuerelementmusters sowie Informationen zum Zustand des Steuerelements.

Steuerelementmuster beziehen sich auf die Benutzeroberfläche, wie Schnittstellen zu COM-Objekten (Component Object Model). In COM können Sie ein Objekt abfragen, um zu fragen, welche Schnittstellen unterstützt werden, und diese Schnittstellen dann für den Zugriff auf Funktionen verwenden. In der Benutzeroberflächenautomatisierung können Benutzeroberflächenautomatisierungs-Clients ein Steuerelement fragen, welches Steuerelementmuster es unterstützt, und dann über die Eigenschaften, Methoden, Ereignisse und Strukturen, die von den unterstützten Steuerelementmustern verfügbar gemacht werden, mit dem Steuerelement interagieren. Beispielsweise implementiert ein Benutzeroberflächenautomatisierungs-Anbieter für ein mehrzeiliges Bearbeitungsfeld eine IScrollProvider-Schnittstelle. Wenn ein Client weiß, dass ein AutomationElement Steuerelementmuster unterstützt ScrollPattern , kann er die Eigenschaften, Methoden und Ereignisse verwenden, die durch dieses Steuerelementmuster verfügbar gemacht werden, um das Steuerelement zu bearbeiten oder auf Informationen zum Steuerelement zuzugreifen.

Benutzeroberflächenautomatisierungs-Anbieter und -Clients

Benutzeroberflächenautomatisierungs-Anbieter implementieren Steuerelementmuster, um das entsprechende Verhalten für eine bestimmte Vom Steuerelement unterstützte Funktionalität verfügbar zu machen.

Benutzeroberflächenautomatisierungs-Clients greifen auf Methoden und Eigenschaften von Steuerelementmusterklassen der Benutzeroberflächenautomatisierung zu und verwenden sie zum Abrufen von Informationen zur Benutzeroberfläche oder zum Bearbeiten der Benutzeroberfläche. Diese Steuerelementmusterklassen befinden sich im System.Windows.Automation Namespace, zum Beispiel im InvokePattern und SelectionPattern.

Clients verwenden AutomationElement-Methoden (wie AutomationElement.GetCurrentPropertyValue oder AutomationElement.GetCachedPropertyValue) oder Zugriffsmethoden der Common Language Runtime (CLR), um auf die Eigenschaften der Benutzeroberflächenautomatisierung in einem Muster zuzugreifen. Jede Steuerelementmusterklasse verfügt über ein Feldmitglied (z. B. InvokePattern.Pattern oder SelectionPattern.Pattern), das dieses Steuerelementmuster identifiziert und als Parameter an GetCachedPattern oder GetCurrentPattern zum Abrufen dieses Musters für ein Steuerelement AutomationElement übergeben werden kann.

Dynamische Kontrollmuster

Einige Steuerelemente unterstützen nicht immer denselben Satz von Steuerelementmustern. Steuerelementmuster werden als unterstützt betrachtet, wenn sie für einen Benutzeroberflächenautomatisierungs-Client verfügbar sind. Beispielsweise ermöglicht ein mehrzeiliges Bearbeitungsfeld nur dann vertikales Scrollen, wenn es mehr Textzeilen enthält, als in seinem Anzeigebereich angezeigt werden können. Das Scrollen wird ausgeschaltet, wenn genügend Text entfernt wird, sodass kein Scrollen mehr erforderlich ist. In diesem Beispiel wird das Steuerungsmuster für ScrollPattern je nach aktuellem Zustand des Steuerelements dynamisch unterstützt, abhängig davon, wie viel Text sich im Bearbeitungsfeld befindet.

Steuerungsmusterklassen und Schnittstellen

In der folgenden Tabelle werden die Steuerelementmuster der Benutzeroberflächenautomatisierung beschrieben. In der Tabelle sind auch die Klassen aufgeführt, die von Benutzeroberflächenautomatisierungs-Clients für den Zugriff auf die Steuerelementmuster verwendet werden, sowie die Schnittstellen, die von Benutzeroberflächenautomatisierungs-Anbietern verwendet werden, um sie zu implementieren.

Steuerelementmusterklasse Anbieterschnittstelle BESCHREIBUNG
DockPattern IDockProvider Wird für Steuerelemente verwendet, die in einem Andockcontainer verankert werden können. Beispielsweise Symbolleisten oder Werkzeugpaletten.
ExpandCollapsePattern IExpandCollapseProvider Wird für Steuerelemente verwendet, die erweitert oder reduziert werden können. Beispielsweise Menüelemente in einer Anwendung wie dem Menü "Datei ".
GridPattern IGridProvider Wird für Steuerelemente verwendet, die Rasterfunktionen unterstützen, z. B. Größenanpassung und Verschieben zu einer angegebenen Zelle. Beispielsweise die große Symbolansicht in Windows Explorer oder einfache Tabellen ohne Kopfzeilen in Microsoft Word.
GridItemPattern IGridItemProvider Wird für Steuerelemente mit Zellen innerhalb von Gittern verwendet. Die einzelnen Zellen sollten das GridItem-Muster unterstützen. Beispielsweise jede Zelle in der Detailansicht von Microsoft Windows Explorer.
InvokePattern IInvokeProvider Wird für Steuerelemente verwendet, die aufgerufen werden können, z. B. eine Schaltfläche.
MultipleViewPattern IMultipleViewProvider Wird für Steuerelemente verwendet, die zwischen mehreren Darstellungen derselben Gruppe von Informationen, Daten oder untergeordneten Elementen wechseln können. Beispielsweise ein Steuerelement für Listenansicht, bei dem Daten in Miniaturansicht, Kachel-, Symbol-, Listen- oder Detailansicht verfügbar sind.
RangeValuePattern IRangeValueProvider Wird für Steuerelemente mit einem Bereich von Werten verwendet, die auf das Steuerelement angewendet werden können. Ein Drehfeld-Steuerelement mit Jahren kann beispielsweise einen Bereich von 1900 bis 2010 aufweisen, während ein anderes Drehfeldsteuerelement, das Monate darstellt, einen Bereich von 1 bis 12 aufweisen würde.
ScrollPattern IScrollProvider Wird für Steuerelemente verwendet, die scrollen können. Beispielsweise ein Steuerelement mit Bildlaufleisten, die aktiv sind, wenn mehr Informationen vorhanden sind, als im sichtbaren Bereich des Steuerelements angezeigt werden können.
ScrollItemPattern IScrollItemProvider Wird für Steuerelemente verwendet, die einzelne Elemente in einer scrollenden Liste haben. Beispielsweise ein Listensteuerelement, das über einzelne Elemente in der Bildlaufliste verfügt, z. B. ein Kombinationsfeld-Steuerelement.
SelectionPattern ISelectionProvider Wird für Steuerelemente von Auswahlcontainern verwendet. Beispielsweise Listenfelder und Kombinationsfelder.
SelectionItemPattern ISelectionItemProvider Wird für einzelne Elemente in Auswahlcontainersteuerelementen verwendet, z. B. Listenfelder und Kombinationsfelder.
TablePattern ITableProvider Wird für Steuerelemente verwendet, die über ein Raster und Kopfzeileninformationen verfügen. Beispielsweise 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, bei denen der Zustand umgeschaltet werden kann. Beispielsweise Kontrollkästchen und aktivierbare Menüeinträge.
TransformPattern ITransformProvider Wird für Steuerelemente verwendet, deren Größe geändert, verschoben und gedreht werden können. Typische Verwendungsmöglichkeiten des Transformationssteuerelementmusters sind in Designern, Formularen, grafischen Editoren und Zeichenanwendungen.
ValuePattern IValueProvider Ermöglicht Kunden das Abrufen oder Festlegen eines Werts für Steuerelemente, die keinen Wertebereich unterstützen. Beispielsweise eine Datums-/Zeitauswahl.
WindowPattern IWindowProvider Stellt Windows-spezifische Informationen bereit, ein grundlegendes Konzept des Microsoft Windows-Betriebssystems. Beispiele für Steuerelemente, die Fenster sind, umfassen Anwendungsfenster der obersten Ebene (wie Microsoft Word, Microsoft Windows Explorer usw.), untergeordnete Fenster in einer Multi-Dokument-Oberfläche (MDI) sowie Dialogfelder.

Siehe auch