MenuItem-Steuerelementtyp

Dieses Thema enthält Informationen zur Microsoft Benutzeroberflächenautomatisierung-Unterstützung für den MenuItem-Steuerelementtyp.

Ein Menüsteuerelement ermöglicht die hierarchische Organisation von Elementen, die Befehlen und Ereignishandlern zugeordnet sind. In einer typischen Windows-Anwendung enthält eine Menüleiste mehrere Menüelemente (z. B. Datei, Bearbeiten und Fenster), und jedes Menüelement zeigt ein Menü an. Ein Menü enthält eine Sammlung von Menüelementen (z. B. Neu, Öffnen und Schließen), die erweitert werden können, um weitere Menüelemente anzuzeigen, oder auf die geklickt werden kann, um eine bestimmte Aktion auszuführen.

In den folgenden Abschnitten werden die erforderlichen Benutzeroberflächenautomatisierung Struktur, Eigenschaften, Steuerelementmuster und Ereignisse für den MenuItem-Steuerelementtyp definiert. Die Benutzeroberflächenautomatisierung Anforderungen gelten für alle Menüelementsteuerelemente, bei denen das Benutzeroberflächenframework bzw. die Plattform Benutzeroberflächenautomatisierung Unterstützung für Steuerelementtypen und Steuerelementmuster integriert.

Dieses Thema enthält folgende Abschnitte:

Typische Struktur

Die folgende Tabelle zeigt eine typische Steuerelement- und Inhaltsansicht der Benutzeroberflächenautomatisierung Struktur, die sich auf Menüelementsteuerelemente bezieht, und beschreibt, was in jeder Ansicht enthalten sein kann. Weitere Informationen zur Benutzeroberflächenautomatisierung-Struktur finden Sie unter übersicht über Benutzeroberflächenautomatisierung-Struktur.

Steuerelementansicht Inhaltsansicht
  • MenuItem „Hilfe“ (?)
    • Menü (Untermenü des Menüelements Hilfe)
      • MenuItem „Hilfethemen“
      • MenuItem „Info“
  • MenuItem „Hilfe“ (?)
    • MenuItem „Hilfethemen“
    • MenuItem „Info“

Die Steuerelementansicht des Menüelement-Steuerelements verfügt über die oben gezeigte Benutzeroberflächenautomatisierung Struktur. Beachten Sie, dass das Menüelement hilfe auf der Menüleiste hinzugefügt wurde, um die Struktur besser zu veranschaulichen.

Für die Inhaltsansicht fehlt Menü in der Benutzeroberflächenautomatisierung Struktur, da dem Endbenutzer keine aussagekräftigen Informationen übermittelt werden.

Relevante Eigenschaften

In der folgenden Tabelle sind die Benutzeroberflächenautomatisierung Eigenschaften aufgeführt, deren Wert oder Definition für den MenuItem-Steuerelementtyp besonders relevant ist. Weitere Informationen zu Benutzeroberflächenautomatisierung Eigenschaften finden Sie unter Abrufen von Eigenschaften aus Benutzeroberflächenautomatisierung Elements.

Benutzeroberflächenautomatisierungs-Eigenschaft Wert Notizen
UIA _ AutomationIdPropertyId Siehe Hinweise. Der Wert dieser Eigenschaft muss für alle Peerelemente in der rohen Ansicht der Benutzeroberflächenautomatisierung-Struktur eindeutig sein. Ordnen Sie die AutomationId-Eigenschaft für ein Menüelement zu, wenn bekannt ist, dass das Element über verschiedene Instanzen der Benutzeroberfläche hinweg konsistent ist. Wenn das Menüelement dynamisch aufgefüllt und nicht vorhersagbar ist, lassen Sie die AutomationId-Eigenschaft leer.
UIA _ BoundingRectanglePropertyId Siehe Hinweise. Das äußere Rechteck, das das gesamte Steuerelement enthält.
UIA _ ClickablePointPropertyId Siehe Hinweise. Unterstützt, wenn es ein umschließendes Rechteck gibt. Wenn nicht jeder Punkt innerhalb des umschließenden Rechtecks klickbar ist und das Element spezielle Treffertests durchführt, überschreibt und stellt einen klickbaren Punkt bereit.
UIA _ ControlTypePropertyId MenuItem
UIA _ IsContentElementPropertyId TRUE Das Menüelement-Steuerelement ist immer in der Inhaltsansicht der Benutzeroberflächenautomatisierung-Struktur enthalten.
UIA _ IsControlElementPropertyId TRUE Das Menüelement-Steuerelement ist immer in der Steuerelementansicht der Benutzeroberflächenautomatisierung-Struktur enthalten.
UIA _ IsKeyboardFocusablePropertyId Siehe Hinweise. Wenn das Steuerelement den Tastaturfokus erhalten kann, muss es diese Eigenschaft unterstützen.
UIA _ LocalizedControlTypePropertyId Siehe Hinweise. Lokalisierte Zeichenfolge, die dem MenuItem-Steuerelementtyp entspricht. Der Standardwert ist "Menüelement" für en-US oder Englisch (USA).
_UIA-NamePropertyId Siehe Hinweise. Der Name des Menüelementsteuerelements ist der Text, der zum Bezeichnen verwendet wird.

Erforderliche Steuerelementmuster

In der folgenden Tabelle sind die Benutzeroberflächenautomatisierung Steuerelementmuster aufgeführt, die von Menüelementsteuerelementen unterstützt werden müssen. Weitere Informationen zu Steuerelementmustern finden Sie unter UI Automation Control Patterns Overview.

Steuerelementmuster Support Notizen
IExpandCollapseProvider Depends (Abhängig) Wenn das Steuerelement erweitert oder reduziert werden kann, implementieren Sie IExpandCollapseProvider.
IInvokeProvider Depends (Abhängig) Wenn das Steuerelement eine einzelne Aktion oder einen einzelnen Befehl ausführt, implementieren Sie IInvokeProvider.
ISelectionItemProvider Depends (Abhängig) Wenn das Steuerelement verwendet wird, um aus einer Liste von Optionen zwischen Menüelementen auszuwählen, implementieren Sie ISelectionItemProvider.
IToggleProvider Depends (Abhängig) Wenn das Steuerelement eine Option darstellt, die aktiviert oder deaktiviert werden kann, implementieren Sie IToggleProvider.

Erforderliche Ereignisse

In der folgenden Tabelle sind die Benutzeroberflächenautomatisierung Ereignisse aufgeführt, die von Menüelementsteuerelementen unterstützt werden müssen. Weitere Informationen zu Ereignissen finden Sie unter UI Automation Events Overview.

Benutzeroberflächenautomatisierung-Ereignis Notizen
UIA _ AutomationFocusChangedEventId
UIA _ Das BoundingRectanglePropertyId-Eigenschaftswechselereignis.
UIA _ ExpandCollapseExpandCollapseStatePropertyId-Eigenschaftswechselereignis. Wenn das Steuerelement das ExpandCollapse-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.
UIA _ Invoke _ InvokedEventId Wenn das Steuerelement das Invoke-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.
UIA _ Das IsEnabledPropertyId-Eigenschaftswechselereignis. Wenn das Steuerelement die IsEnabled-Eigenschaft unterstützt, muss es dieses Ereignis unterstützen.
UIA _ IsOffscreenPropertyId-Eigenschaftswechselereignis. Wenn das Steuerelement die IsOffscreen-Eigenschaft unterstützt, muss es dieses Ereignis unterstützen.
UIA _ _ SelectionItem-ElementAddedToSelectionEventId Wenn das Steuerelement das SelectionItem-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.
UIA _ _ SelectionItem-ElementRemovedFromSelectionEventId Wenn das Steuerelement das SelectionItem-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.
UIA _ _ SelectionItem-ElementSelectedEventId Wenn das Steuerelement das SelectionItem-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.
UIA _ StructureChangedEventId
UIA _ Das ToggleToggleStatePropertyId-Eigenschaftswechselereignis. Wenn das Steuerelement das Umschalten-Steuerelementmuster unterstützt, muss es dieses Ereignis unterstützen.

Legacyprobleme

Für Microsoft Win32-Menüelemente wird das Umschalt-Steuerelementmuster nur unterstützt, wenn ein Menüelement aktiviert ist, und es ist möglich, programmgesteuert zu bestimmen, ob Unterstützung für das Umschalten-Steuerelementmuster erforderlich ist. Da ein Win32-Menüelement nicht verfügbar macht, ob es aktiviert werden kann, wird das Invoke-Steuerelementmuster unterstützt, wenn das Menüelement nicht aktiviert ist. Das Invoke-Steuerelementmuster wird immer unterstützt, auch für Menüelemente, die nur zur Unterstützung des Umschalt-Steuerelementmusters erforderlich sind. Dies ist so, dass Clients nicht verwechselt werden, wenn ein Menüelement, das das Invoke-Steuerelementmuster unterstützt hat (wenn das Menüelement deaktiviert wurde), dieses Muster nicht mehr unterstützt, wenn es aktiviert wird.

Konzept

Übersicht über Steuerelementtypen für Benutzeroberflächenautomatisierung

Übersicht über die Benutzeroberflächenautomatisierung