Freigeben über


Steuerelementmuster aufrufen

Beschreibt Richtlinien und Konventionen für die Implementierung von IInvokeProvider-, einschließlich Informationen zu Methoden. Das Aufrufen Steuerelementmusters wird verwendet, um Steuerelemente zu unterstützen, die den Zustand nicht beibehalten, wenn sie aktiviert werden, sondern eine einzelne, eindeutige Aktion initiieren oder ausführen.

Steuerelemente, die den Zustand beibehalten, z. B. Kontrollkästchen und Optionsfelder, müssen stattdessen IToggleProvider- und ISelectionProvider- implementieren. Beispiele für Steuerelemente, die dieses Steuerelementmuster implementieren, finden Sie unter Steuerelementtypen und deren unterstützte Steuerelementmuster.

Dieses Thema enthält die folgenden Abschnitte.

Implementierungsrichtlinien und -konventionen

Beachten Sie bei der Implementierung des Invoke Steuerelementmusters die folgenden Richtlinien und Konventionen:

  • Steuerelemente implementieren IInvokeProvider-, wenn dasselbe Verhalten nicht über einen anderen Steuerelementmusteranbieter verfügbar gemacht wird. Wenn beispielsweise die IUIAutomationInvokePattern::Invoke-Methode für ein Steuerelement dieselbe Aktion wie die IUIAutomationExpandCollapsePattern::Expand oder Collapse-Methode ausführt, sollte das Steuerelement nicht IInvokeProviderimplementieren.

  • Das Aufrufen eines Steuerelements erfolgt in der Regel durch Klicken oder Doppelklicken oder Drücken der EINGABETASTE, einer vordefinierten Tastenkombination oder einer alternativen Tastenkombination.

  • Das Invoked-Ereignis (UIA_Invoke_InvokedEventId) wird für ein aktiviertes Steuerelement ausgelöst (als Reaktion auf ein Steuerelement, das seine zugeordnete Aktion ausführt). Wenn möglich, sollte das Ereignis ausgelöst werden, nachdem das Steuerelement die Aktion abgeschlossen und ohne Blockieren zurückgegeben wurde. Das Invoked-Ereignis (UIA_Invoke_InvokedEventId) sollte ausgelöst werden, bevor die Invoke-Anforderung in den folgenden Szenarien gewartet wird:

    • Es ist nicht möglich oder praktisch, bis die Aktion abgeschlossen ist.
    • Für die Aktion ist eine Benutzerinteraktion erforderlich.
    • Die Aktion ist zeitaufwändig und bewirkt, dass der aufrufende Client für einen erheblichen Zeitraum blockiert wird.
  • Wenn das Aufrufen des Steuerelements erhebliche Nebenwirkungen hat, sollten diese Nebenwirkungen über die HelpText-eigenschaft verfügbar gemacht werden. Auch wenn IUIAutomationInvokePattern::Invoke nicht der Auswahl zugeordnet ist, kann Aufrufen dazu führen, dass ein anderes Steuerelement ausgewählt wird.

  • Mauszeigereffekte (oder Mauszeigereffekte) stellen in der Regel kein Invoked-Ereignis dar. Steuerelemente, die eine Aktion (im Gegensatz zur Ursache eines visuellen Effekts) basierend auf dem Hoverzustand ausführen, sollten jedoch das Aufrufen Steuerelementmuster unterstützen.

    Anmerkung

    Diese Implementierung wird als Barrierefreiheitsproblem betrachtet, wenn das Steuerelement nur als Ergebnis eines mausbezogenen Nebeneffekts aufgerufen werden kann.

  • Das Aufrufen eines Steuerelements unterscheidet sich von der Auswahl eines Elements. Je nach Steuerelement kann das Aufrufen des Elements jedoch dazu führen, dass das Element als Nebeneffekt ausgewählt wird. Wenn Sie beispielsweise ein Microsoft Word-Dokumentlistenelement im Ordner "Eigene Dokumente" aufrufen, wird das Element ausgewählt und das Dokument geöffnet.

  • Ein Element kann sofort beim Aufrufen aus der Microsoft-Benutzeroberflächenautomatisierungs-Struktur verschwinden. Das Anfordern von Informationen aus dem vom Ereignisrückruf bereitgestellten Element schlägt möglicherweise fehl. Das Vorabrufen zwischengespeicherter Informationen ist die empfohlene Problemumgehung.

  • Steuerelemente können mehrere Steuerelementmuster implementieren. Beispielsweise implementiert das steuerelement Füllfarbe auf der Microsoft Excel-Symbolleiste sowohl das Aufrufen als auch das ExpandCollapse Steuerelementmuster. Das ExpandCollapse-Steuerelementmuster macht das Menü verfügbar, und das Invoke Steuerelementmuster füllt die aktive Auswahl mit der ausgewählten Farbe.

Erforderliche Elemente für IInvokeProvider-

Die folgende Methode ist für die Implementierung der IInvokeProvider Schnittstelle erforderlich.

Erforderliche Mitglieder Elementtyp Notizen
aufrufen Methode Invoke ist ein asynchroner Aufruf und muss sofort ohne Blockieren zurückgegeben werden.
Dieses Verhalten ist besonders für Steuerelemente wichtig, die beim Aufrufen direkt oder indirekt ein modales Dialogfeld starten. Jeder Benutzeroberflächenautomatisierungs-Client, der das Ereignis ausgelöst hat, bleibt blockiert, bis das modale Dialogfeld geschlossen wird.

Dieses Steuerelementmuster hat keine zugeordneten Eigenschaften oder Ereignisse.

Steuerelementtypen und deren unterstützte Steuerelementmuster

Übersicht über Steuerelementmuster für die Benutzeroberflächenautomatisierung

übersicht über Benutzeroberflächenautomatisierungsstruktur

UIA_Invoke_InvokedEventId