Implementieren des Selection-Steuerelementmusters der Benutzeroberflächenautomatisierung
Hinweis
Diese Dokumentation ist für .NET Framework-Entwickler konzipiert, die die verwalteten Klassen zur Automatisierung der Benutzeroberfläche verwenden möchten, die im Namespace System.Windows.Automation definiert sind. Aktuelle Informationen zur Automatisierung der Benutzeroberfläche finden Sie auf der Seite zur Windows-Automatisierungs-API: Benutzeroberflächenautomatisierung.
Dieses Thema enthält Richtlinien und Konventionen für das Implementieren von ISelectionProvider, einschließlich Informationen über Ereignisse und Eigenschaften. Links zu zusätzlichen Referenzen sind am Ende dieses Themas aufgelistet.
Das SelectionPattern -Steuerelementmuster wird zur Unterstützung von Steuerelementen verwendet, die als Container für eine Auflistung von auswählbaren untergeordneten Elementen dienen. Die untergeordneten Elemente dieses Elements müssen ISelectionItemProviderimplementieren. Beispiele für Steuerelemente, die dieses Steuerelementmuster implementieren, finden Sie unter Control Pattern Mapping for UI Automation Clients.
Implementierungsrichtlinien und -konventionen
Beachten Sie beim Implementieren des Selection-Steuerelementmusters die folgenden Richtlinien und Konventionen:
Steuerelemente, die ISelectionProvider implementieren, gestatten die Einfach- oder Mehrfachauswahl von untergeordneten Elementen. Listenfelder, Listenansichten und Strukturansichten unterstützen z. B. die Mehrfachauswahl, während Kombinationsfelder, Schieberegler und Optionsfeldgruppen die Einfachauswahl unterstützen.
Steuerelemente, die über ein Minimum, Maximum und einen zusammenhängenden Bereich verfügen, z. B. Lautstärke -Schieberegler, sollten IRangeValueProvider anstelle von ISelectionProviderimplementieren.
Steuerelemente mit Einfachauswahl, die untergeordnete Steuerelemente verwalten, die IRawElementProviderFragmentRoot implementieren, z. B. der Schieberegler Bildschirmauflösung im Dialogfeld Anzeigeeigenschaften oder das Auswahlsteuerelement Farbauswahl von Microsoft Word (unten dargestellt), sollten ISelectionProvider implementieren. Deren untergeordnete Elemente sollten sowohl IRawElementProviderFragment als auch ISelectionItemProvider implementieren.
Beispiel für eine Zuordnung zwischen Farbmustern und Zeichenfolgen
- Menüs unterstützen keine SelectionPattern. Wenn Sie mit Menüelementen arbeiten, die Text und Grafiken enthalten (z. B. die Vorschaufenster-Elemente im Menü Ansicht in Microsoft Outlook) und den Zustand übermitteln müssen, sollten Sie IToggleProvider implementieren.
Erforderliche Member für ISelectionProvider
Die folgenden Eigenschaften, Methoden und Ereignisse sind für die ISelectionProvider -Schnittstelle erforderlich.
Erforderliche Member | type | Notizen |
---|---|---|
CanSelectMultiple | Eigenschaft | Sollte durch Eigenschaften geänderte Ereignisse mithilfe von AddAutomationPropertyChangedEventHandler und RemoveAutomationPropertyChangedEventHandlerunterstützen. |
IsSelectionRequired | Eigenschaft | Sollte durch Eigenschaften geänderte Ereignisse mithilfe von AddAutomationPropertyChangedEventHandler und RemoveAutomationPropertyChangedEventHandlerunterstützen. |
GetSelection | Methode | Keine |
InvalidatedEvent | Ereignis | Dieses wird ausgelöst, wenn die Auswahl in einem Container maßgeblich geändert wurde und dies das Senden weiterer Hinzufügen- und Entfernen-Ereignisse erfordert, als die InvalidateLimit -Konstante gestattet. |
Die Eigenschaften IsSelectionRequired und CanSelectMultiple können dynamisch sein. Im anfänglichen Zustand eines Steuerelements sind z. B. möglicherweise standardmäßig keine Elemente ausgewählt, wodurch angezeigt wird, dass IsSelectionRequiredfalse
ist. Nach dem Auswählen eines Elements muss für das Steuerelement jedoch immer mindestens ein Element ausgewählt sein. Auf ähnliche Weise kann ein Steuerelement in seltenen Fällen bei der Initialisierung die Mehrfachauswahl von Elementen gestatten, während anschließend nur noch die Einfachauswahl zulässig ist.
Ausnahmen
Anbieter müssen die folgenden Ausnahmen auslösen.
Ausnahmetyp | Bedingung |
---|---|
ElementNotEnabledException | Wenn das Steuerelement nicht aktiviert ist. |
InvalidOperationException | Wenn das Steuerelement ausgeblendet ist. |
Siehe auch
- Übersicht über Steuerelementmuster für Benutzeroberflächenautomatisierung
- Unterstützung von Steuerelementmustern in einem Benutzeroberflächenautomatisierungs-Anbieter
- Steuerelementmuster für Benutzeroberflächenautomatisierung für Clients
- Implementieren des SelectionItem-Steuerelementmusters der Benutzeroberflächenautomatisierung
- Übersicht über die Benutzeroberflächenautomatisierungs-Struktur
- Verwenden der Zwischenspeicherung in der Benutzeroberflächenautomatisierung