Stöd för användargränssnittsautomatisering för menykontrolltypen
Kommentar
Den här dokumentationen System.Windows.Automation är avsedd för .NET Framework-utvecklare som vill använda de hanterade UI Automation-klasserna som definierats i namnområdet. Den senaste informationen om UI Automation finns i Windows Automation API: UI Automation.
Det här avsnittet innehåller information om Microsoft UI Automation-stöd för menykontrolltypen. Den beskriver kontrollens Microsoft UI Automation-trädstruktur och tillhandahåller egenskaper och kontrollmönster för specifika kontrollscenarier.
En menykontroll tillåter hierarkisk organisation av element som är associerade med kommandon och händelsehanterare. I ett typiskt Microsoft Windows-program innehåller en menyrad flera menyknappar (till exempel Arkiv, Redigera och Fönster) och varje menyknapp visar en meny. En meny innehåller en samling menyobjekt (till exempel Nytt, Öppna och Stäng), som kan expanderas för att visa ytterligare menyalternativ eller utföra en specifik åtgärd när du klickar.
I följande avsnitt definieras den nödvändiga UI Automation-trädstrukturen, egenskaperna, kontrollmönstren och händelserna för menykontrolltypen. Kraven för användargränssnittsautomatisering gäller för alla listkontroller, oavsett om det gäller Windows Presentation Foundation (WPF), Win32 eller Windows Forms.
Obligatorisk trädstruktur för användargränssnittsautomatisering
I följande tabell visas kontrollvyn och innehållsvyn för UI Automation-trädet som gäller för menykontroller och beskriver vad som kan finnas i varje vy. Mer information om UI Automation-trädet finns i Översikt över UI Automation Tree.
Kontrollvy | Innehållsvy |
---|---|
Meny - MenuItem (1 eller många) |
Inte tillämpligt (såvida inte menykontrollen är en snabbmeny som är överordnad till ett objekt som inte är ett menyalternativ) - MenuItem (1 eller många) |
Menykontroller visas alltid i kontrollvyn och innehållsvyn i UI Automation-trädet. Menykontrolltyper bör visas under den kontroll som deras information refererar till. UI Automation-klienter måste lyssna efter för MenuOpenedEvent
att säkerställa att de konsekvent hämtar information som förmedlas av menykontroller. Snabbmenykontroller är ett specialfall. De visas som underordnade till Skrivbordet.
Nödvändiga egenskaper för UI Automation
I följande tabell visas de UI Automation-egenskaper vars värde eller definition är särskilt relevant för menykontrolltypen. Mer information om egenskaper för UI Automation finns i UI Automation Properties for Clients (Egenskaper för gränssnittsautomatisering för klienter).
UI Automation-egenskap | Värde | Kommentar |
---|---|---|
NameProperty | Stöds inte | Menykontrollen kräver inte att en namnegenskap anges. |
LabeledByProperty | Null |
Ingen etikett förväntas med en typisk menykontroll. |
ControlTypeProperty | Meny | Det här värdet är detsamma för alla gränssnittsramverk. |
IsContentElementProperty | Falsk | Menykontrollen ingår inte i innehållsvyn i UI Automation-trädet. |
IsControlElementProperty | Sant | Menykontrollen ingår alltid i kontrollvyn för UI Automation-trädet. |
Nödvändiga UI Automation-kontrollmönster
Det finns inga nödvändiga kontrollmönster för menykontrolltypen.
Nödvändiga UI Automation-händelser
Menykontroller måste höjas MenuOpenedEvent
när de visas på skärmen. Kommer MenuOpenedEvent
att innehålla texten i kontrollen. Måste MenuClosedEvent
höjas när en meny försvinner från skärmen.
I följande tabell visas de UI Automation-händelser som krävs för att stödjas av alla menykontroller. Mer information om händelser finns i Översikt över UI Automation-händelser.
UI Automation-händelse | Support/värde | Kommentar |
---|---|---|
MenuOpenedEvent | Obligatoriskt | Ingen |
MenuClosedEvent | Obligatoriskt | Ingen |
BoundingRectangleProperty händelse som ändrats av egenskapen. | Obligatoriskt | Ingen |
IsOffscreenProperty händelse som ändrats av egenskapen. | Obligatoriskt | Ingen |
IsEnabledProperty händelse som ändrats av egenskapen. | Obligatoriskt | Ingen |
AutomationFocusChangedEvent | Obligatoriskt | Ingen |
StructureChangedEvent | Obligatoriskt | Inga |