Stöd för användargränssnittsautomatisering för menyradskontrolltypen
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 UI Automation-stöd för MenuBar kontrolltypen. I UI Automation är en kontrolltyp en uppsättning villkor som en kontroll måste uppfylla för att kunna använda egenskapen ControlTypeProperty . Villkoren innehåller specifika riktlinjer för UI Automation-trädstruktur, UI Automation-egenskapsvärden och kontrollmönster.
Menyradskontroller är ett exempel på kontroller som implementerar kontrolltypen Menyrad. Menystaplar är ett sätt för användare att aktivera kommandon och alternativ som finns i ett program.
I följande avsnitt definieras den nödvändiga UI Automation-trädstrukturen, egenskaperna, kontrollmönstren och händelserna för kontrolltypen MenuBar. 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
Följande tabell visar kontrollvyn och innehållsvyn för UI Automation-trädet som gäller för menyradskontroller 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 |
---|---|
Menyraden - MenuItem (1 eller mer) – Andra kontroller (0 eller många) |
Menyraden - MenuItem (1 eller mer) – Andra kontroller (0 eller många) |
Menyradskontroller kan innehålla andra kontroller, till exempel redigeringskontroller och kombinationsrutor i dess struktur. Dessa ytterligare kontroller motsvarar de "andra kontroller" som anges ovan i kontroll- och innehållsvyerna.
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 menyradskontrollerna. 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 |
---|---|---|
BoundingRectangleProperty | Se anteckningar. | Värdet som exponeras av den här egenskapen måste innehålla alla kontroller som finns i den. |
NameProperty | Se anteckningar. | Menyradskontrollen behöver inget namn om inte ett program har fler än en menyrad. Om det finns fler än en menyrad i ett program bör den här egenskapen användas för att exponera unika namn, till exempel "Formatering" eller "Beskrivning". |
LabeledByProperty | Null |
Menyradskontrollerna har aldrig någon etikett. |
ControlTypeProperty | Menyraden | Det här värdet är detsamma för alla gränssnittsramverk. |
LocalizedControlTypeProperty | "menyrad" | Lokaliserad sträng som motsvarar kontrolltypen Menyrad. |
IsContentElementProperty | Sant | Menyradskontrollen ingår alltid i innehållsvyn i UI Automation-trädet. |
IsControlElementProperty | Sant | Menyradskontrollen ingår alltid i kontrollvyn för UI Automation-trädet. |
IsOffscreenProperty | Se anteckningar. | Värdet för den här egenskapen beror på om kontrollen kan visas på skärmen. |
OrientationProperty | Beror | Den här egenskapen visar om menyradskontrollen är vågrät eller lodrät. |
IsKeyboardFocusableProperty | Sant | Menyradskontroller är tangentbordsfokuserbara eftersom kontrollerna de innehåller kan fokusera på tangentbordet. |
HelpTextProperty | Se anteckningar. | Inga scenarier för när hjälptext krävs för en menyradskontroll. |
AcceleratorKeyProperty | Null |
Menyraderna har aldrig acceleratornycklar. |
AccessKeyProperty | "ALT" | Om du trycker på ALT-tangenten bör du alltid fokusera på menyraden i programmet. |
Nödvändiga UI Automation-kontrollmönster
I följande tabell visas de UI Automation-kontrollmönster som krävs för att stödjas av menyradskontroller. Mer information om kontrollmönster finns i Översikt över UI Automation-kontrollmönster.
Kontrollmönster | Support | Kommentar |
---|---|---|
IExpandCollapseProvider | Beror | Om kontrollen kan expanderas eller komprimeras implementerar du IExpandCollapseProvider. |
IDockProvider | Beror | Om kontrollen kan dockas till olika delar av skärmen implementerar du IDockProvider. |
ITransformProvider | Beror | Om kontrollen kan ändras, roteras eller flyttas måste den implementera ITransformProvider. |
Nödvändiga UI Automation-händelser
I följande tabell visas de UI Automation-händelser som krävs för att stödjas av alla menyradskontroller. Mer information om händelser finns i Översikt över UI Automation-händelser.
UI Automation-händelse | Support/värde | Kommentar |
---|---|---|
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 |
ExpandCollapseStateProperty händelse som ändrats av egenskapen. | Beror | Ingen |
AutomationFocusChangedEvent | Obligatoriskt | Ingen |
StructureChangedEvent | Obligatoriskt | Inga |