Sdílet prostřednictvím


Podpora automatizace uživatelského rozhraní pro typ ovládacího prvku MenuItem

Poznámka:

Tato dokumentace je určená pro vývojáře rozhraní .NET Framework, kteří chtějí používat spravované třídy automatizace uživatelského rozhraní definované v oboru názvů System.Windows.Automation. Nejnovější informace o automatizaci uživatelského rozhraní najdete v tématu rozhraní API služby Windows Automation: Automatizace uživatelského rozhraní.

Toto téma obsahuje informace o podpoře microsoft UI Automation pro typ ovládacího prvku MenuItem. Popisuje strukturu stromu Microsoft UI Automation ovládacího prvku a poskytuje vlastnosti a vzory ovládacích prvků, které jsou požadovány pro typ ovládacího prvku MenuItem.

Ovládací prvek nabídky umožňuje hierarchii prvků spojených s příkazy a obslužnými rutinami událostí. V typické aplikaci Microsoft Windows řádek nabídek obsahuje několik položek nabídky (například Soubor, Úpravy a Okno) a každá položka nabídky zobrazí nabídku. Nabídka obsahuje kolekci položek nabídky (například Nový, Otevříta Zavřít), které lze rozbalit tak, aby zobrazovaly další položky nabídky nebo prováděly konkrétní akci po kliknutí. Položku nabídky lze hostovat v nabídce, řádku nabídek nebo panelu nástrojů.

Následující části definují požadovanou strukturu stromu automatizace uživatelského rozhraní, vlastnosti, vzory ovládacích prvků a události pro typ ovládacího prvku MenuItem. Požadavky na automatizaci uživatelského rozhraní platí pro všechny ovládací prvky seznamu, ať už windows Presentation Foundation (WPF), Win32 nebo Windows Forms.

Požadovaná struktura stromu automatizace uživatelského rozhraní

Následující tabulka znázorňuje zobrazení ovládacích prvků a zobrazení obsahu stromu automatizace uživatelského rozhraní, které se týká ovládacích prvků položek nabídky, a popisuje, co může být obsaženo v jednotlivých zobrazeních. Další informace o stromu automatizace uživatelského rozhraní najdete v tématu Přehled stromu automatizace uživatelského rozhraní.

Zobrazení ovládacího prvku Zobrazení obsahu
MenuItem "Nápověda"

  • Nabídka (pod menu položky nápovědy)

    • MenuItem "Témata nápovědy"
    • Položka menu "O programu Poznámkový blok"
MenuItem "Nápověda"

- MenuItem "Témata nápovědy"
- MenuItem "O programu Poznámkový blok"

Zobrazení ovládacího prvku položky nabídky má strukturu stromu automatizace uživatelského rozhraní zobrazenou výše. Všimněte si, že položka nabídky Nápověda je zahrnuta, aby lépe ilustrovala strukturu v typické hierarchii nabídky a podnabídky.

V zobrazení obsahu chybí Menu ve stromu automatizace uživatelského rozhraní, protože koncovému uživateli nesděluje smysluplné informace.

Požadované vlastnosti automatizace uživatelského rozhraní

Následující tabulka uvádí vlastnosti automatizace uživatelského rozhraní, jejichž hodnota nebo definice jsou zvláště relevantní pro ovládací prvky položek nabídky. Další informace o vlastnostech automatizace uživatelského rozhraní naleznete v tématu Vlastnosti automatizace uživatelského rozhraní pro klienty.

Vlastnictví Hodnota Popis
AutomationIdProperty Viz poznámky. Hodnota této vlastnosti musí být jedinečná pro všechny ovládací prvky v aplikaci.
BoundingRectangleProperty Viz poznámky. Vnější obdélník, který obsahuje celý ovládací prvek.
ClickablePointProperty Viz poznámky. Podporuje se, pokud existuje ohraničující obdélník. Pokud není každý bod uvnitř ohraničujícího obdélníku kliknutelný a provádíte specializované testování zásahů, můžete přepsat a poskytnout kliknutelný bod.
IsKeyboardFocusableProperty Viz poznámky. Pokud ovládací prvek může přijímat fokus klávesnice, musí tuto vlastnost podporovat.
NameProperty Viz poznámky. Ovládací prvek položky nabídky je součástí zobrazení obsahu stromu Automatizace uživatelského rozhraní a je sám označen názvem.
LabeledByProperty Null Žádný popisek.
ControlTypeProperty Položka menu Tato hodnota je stejná pro všechny architektury uživatelského rozhraní.
LocalizedControlTypeProperty "položka nabídky" Lokalizovaný řetězec odpovídající typu ovládacího prvku MenuItem.
IsContentElementProperty Pravdivé Ovládací prvek položky nabídky nikdy není součástí obsahového zobrazení stromu automatizace uživatelského rozhraní.
IsControlElementProperty Pravdivé Ovládací prvek nabídky musí být vždy součástí zobrazení stromu automatizace uživatelského rozhraní.

Požadované vzory ovládacích prvků automatizace uživatelského rozhraní

V následující tabulce jsou uvedeny vzory ovládacích prvků automatizace uživatelského rozhraní, které musí ovládací prvky nabídky podporovat. Další informace o vzorech ovládacích prvků najdete v tématu přehled vzorů ovládacích prvků automatizace uživatelského rozhraní.

Vlastnost vzoru ovládacího prvku Podpora Poznámky
IExpandCollapseProvider Závisí Pokud mohou být ovládací prvky rozbaleny nebo sbaleny, implementujte IExpandCollapseProvider.
IInvokeProvider Závisí Pokud ovládací prvek provede jednu akci nebo příkaz, implementujte IInvokeProvider.
IToggleProvider Závisí Pokud ovládací prvek představuje možnost, která může být zapnuta nebo vypnuta, implementujte IToggleProvider.
ISelectionItemProvider Závisí Pokud se ovládací prvek používá k výběru ze seznamu možností mezi položkami nabídky, implementujte ISelectionItemProvider.

Události automatizace uživatelského rozhraní pro položku nabídky

Následující tabulka uvádí události Microsoft UI Automation přidružené k ovládacímu prvku položky nabídky.

Událost Podpora Vysvětlení
InvokedEvent Závisí Musí být vyvolán, pokud ovládací prvek podporuje vzor ovládacího prvku Invoke.
ToggleStateProperty událost změny vlastnosti. Závisí Musí být vyvolána, pokud ovládací prvek podporuje přepínací vzor ovládání.
ExpandCollapseStateProperty událost změny vlastnosti. Závisí Musí být vyvolána, pokud ovládání podporuje vzorec rozbalení a sbalení.
ElementSelectedEvent Závisí Žádné.

Požadované události automatizace uživatelského rozhraní

V následující tabulce jsou uvedeny události automatizace uživatelského rozhraní, které musí být podporovány všemi ovládacími prvky položek nabídky. Další informace o událostech najdete v tématu Přehled událostí automatizace uživatelského rozhraní.

Událost automatizace uživatelského rozhraní Podpora/hodnota Poznámky
InvokedEvent Závisí Žádné
ElementAddedToSelectionEvent Závisí Žádné
ElementRemovedFromSelectionEvent Závisí Žádné
ElementSelectedEvent Závisí Žádné
BoundingRectangleProperty událost změny vlastnosti. Povinné Žádné
IsOffscreenProperty událost změny vlastnosti. Povinné Žádné
IsEnabledProperty událost změny vlastnosti. Povinné Žádné
ExpandCollapseStateProperty událost změny vlastnosti. Závisí Žádné
ToggleStateProperty událost změny vlastnosti. Závisí Žádné
AutomationFocusChangedEvent Povinné Žádné
StructureChangedEvent Povinné Žádné

Starší verze problémů

Podpora přepínačového vzoru bude dostupná pouze v případě, že je zaškrtnuta položka nabídky Win32 a na základě programového určení je nutné podporovat přepínačový vzor. Vzhledem k tomu, že položka nabídky Win32 nezpřístupňuje, zda má možnost kontrolovat, bude vyvolání vzoru podporováno, pokud položka nabídky není zaškrtnutá. U položek nabídky, které by měly podporovat pouze přepínací vzor, bude učiněna výjimka, která umožní vždy podporovat vzor vyvolání. Klienti nejsou zmateni tím, že prvek, který podporoval vzorek Invoke (když byla položka nabídky nezaškrtnuta), již nepodporuje vzorek, jakmile se zaškrtne. To znamená, že.

Viz také

  • MenuItem
  • Přehled vzorů ovládacích prvků automatizace uživatelského rozhraní
  • Přehled typů ovládacích prvků automatizace uživatelského rozhraní
  • Přehled automatizace uživatelského rozhraní