Megosztás a következőn keresztül:


Felhasználói felület automatizálásának támogatása a MenuItem vezérlőtípushoz

Megjegyzés:

Ez a dokumentáció azoknak a .NET-keretrendszer-fejlesztőknek készült, akik a System.Windows.Automation névtérben definiált felügyelt felhasználói felületi Automation-osztályokat szeretnék használni. A felhasználói felület automatizálásával kapcsolatos legfrissebb információkért lásd Windows Automation API: UI Automation.

Ez a témakör a MenuItem vezérlőtípus Microsoft UI Automation-támogatásával kapcsolatos információkat tartalmaz. Ismerteti a vezérlő Microsoft UI Automation fastruktúráját, és megadja a MenuItem vezérlőtípushoz szükséges tulajdonságokat és szabályozási mintákat.

A menüvezérlők lehetővé teszik a parancsokhoz és eseménykezelőkhöz társított elemek hierarchikus rendszerezését. Egy tipikus Microsoft Windows-alkalmazásban a menüsáv több menüelemet (például Fájl, Szerkesztés és Ablak) tartalmaz, és mindegyik menüelem megjelenít egy menüt. A menük olyan menüelemek gyűjteményét tartalmazzák (például Új, megnyitása és bezárása), amelyek kibonthatók további menüelemek megjelenítéséhez, vagy kattintáskor egy adott művelet végrehajtásához. A menüelem menüben, menüsávban vagy eszközsávban lehet elhelyezve.

A következő szakaszok határozzák meg a MenuItem vezérlőtípushoz szükséges UI Automation-fastruktúrát, tulajdonságokat, szabályozási mintákat és eseményeket. A felhasználói felület automatizálási követelményei az összes listavezérlőre vonatkoznak, legyen az a Windows Presentation Foundation (WPF), a Win32 vagy a Windows Forms.

A felhasználói felület automatizálásának szükséges faszerkezete

Az alábbi táblázat a menüelem-vezérlőkre vonatkozó felhasználói felületi automation fa vezérlőnézetét és tartalomnézetét mutatja be, és ismerteti az egyes nézetekben található elemeket. A felhasználói felület automatizálási fájával kapcsolatos további információkért tekintse meg a felhasználói felület automatizálási fájának áttekintését.

Vezérlőnézet Tartalomnézet
MenuItem "Súgó"

  • Menü (a Súgó menüelem almenüje)

    • MenuItem "Súgótémakörök"
    • MenuItem "Névjegy jegyzettömb"
MenuItem "Súgó"

- Menüelem "Segítség témakörök"
- MenuItem "Jegyzettömb névjegye"

A menüelem vezérlőelem vezérlőnézetében a fent látható UI Automation faszerkezet látható. Vegye figyelembe, hogy a súgó menüeleme jobban szemlélteti a struktúrát egy tipikus menüben az almenü-hierarchia felé.

A tartalomnézet esetében a menü hiányzik a felhasználói felület automatizálási fájából, mert nem továbbít értelmes információkat a végfelhasználónak.

A felhasználói felület automatizálásának szükséges tulajdonságai

Az alábbi táblázat felsorolja azokat a felhasználói felületi automatizálási tulajdonságokat, amelyek értéke vagy definíciója különösen releváns a menüelem-vezérlők szempontjából. További információ a felhasználói felület automatizálási tulajdonságairól: UI Automation Properties for Clients.

Ingatlan Érték Leírás
AutomationIdProperty Lásd a jegyzeteket. A tulajdonság értékének egyedinek kell lennie az alkalmazás összes vezérlőjében.
BoundingRectangleProperty Lásd a jegyzeteket. A teljes vezérlőt tartalmazó legkülső téglalap.
ClickablePointProperty Lásd a jegyzeteket. Ha van határolókeret, akkor támogatott. Ha a határoló téglalapon belül nem minden pont kattintható, és speciális találatti tesztelést végez, akkor felülbírálhatja a beállításokat, és megadhat egy kattintható pontot.
IsKeyboardFocusableProperty Lásd a jegyzeteket. Ha a vezérlő képes fogadni a billentyűzetfókuszt, támogatnia kell ezt a tulajdonságot.
NameProperty Lásd a jegyzeteket. A menüelem-vezérlő a felhasználói felület Automation-fájának tartalomnézetében található, és egy névvel ellátott saját címkével van ellátva.
LabeledByProperty Null Nincs címke.
ControlTypeProperty Menüelem Ez az érték minden felhasználói felületi keretrendszer esetében megegyezik.
LocalizedControlTypeProperty menüpont A MenuItem vezérlőtípusnak megfelelő honosított sztring.
IsContentElementProperty Igaz A menüelem-vezérlő soha nem szerepel a felhasználói felület automatizálási fa tartalomnézetében.
IsControlElementProperty Igaz A menüelem vezérlőjének mindig szerepelnie kell a felhasználói felület automatizálási fa vezérlőnézetében.

A felhasználói felület automatizálásának szükséges szabályozási mintái

Az alábbi táblázat felsorolja azokat a felhasználói felületi automatizálási vezérlőmintákat, amelyeket a menüelem-vezérlőknek támogatniuk kell. További információ a vezérlőmintákról: felhasználói felület automatizálási vezérlőmintáinak áttekintése.

Vezérlőminta tulajdonság Támogatás Jegyzetek
IExpandCollapseProvider Attól függ. Ha a vezérlő kibontható vagy összecsukható, alkalmazza IExpandCollapseProvider.
IInvokeProvider Attól függ. Ha a vezérlő egyetlen műveletet vagy parancsot hajt végre, implementálja a parancsot IInvokeProvider.
IToggleProvider Attól függ. Ha a vezérlő olyan beállítást jelöl, amely be- vagy kikapcsolható, hajtsa végre a műveletet IToggleProvider.
ISelectionItemProvider Attól függ. Ha a vezérlőt a menüelemek közötti lehetőségek listájából való kiválasztásra használja, alkalmazza ISelectionItemProvider.

Felhasználói felület automatizálási eseményei menüelemhez

Az alábbi táblázat a menüelem-vezérlőhöz társított Microsoft UI Automation-eseményeket sorolja fel.

Esemény Támogatás Magyarázat
InvokedEvent Attól függ. Fel kell emelni, ha a vezérlőelem támogatja a vezérlési minta meghívását.
ToggleStateProperty tulajdonság-változás esemény. Attól függ. Fel kell emelni, ha a vezérlő támogatja a kapcsolóvezérlési mintát.
ExpandCollapseStateProperty tulajdonság-változás esemény. Attól függ. Fel kell emelni, ha a vezérlőelem támogatja a Kibontás összecsukási vezérlőmintát.
ElementSelectedEvent Attól függ. Nincs.

Kötelező felhasználói felület automatizálási eseményei

Az alábbi táblázat felsorolja azokat a felhasználói felületi automatizálási eseményeket, amelyeket az összes menüelem-vezérlőnek támogatnia kell. További információ az eseményekről: felhasználói felületi automatizálási események áttekintése.

Felhasználói felület automatizálási eseménye Támogatás/érték Jegyzetek
InvokedEvent Attól függ. Egyik sem
ElementAddedToSelectionEvent Attól függ. Egyik sem
ElementRemovedFromSelectionEvent Attól függ. Egyik sem
ElementSelectedEvent Attól függ. Egyik sem
BoundingRectangleProperty tulajdonság-változás esemény. Kötelező Egyik sem
IsOffscreenProperty tulajdonság-változás esemény. Kötelező Egyik sem
IsEnabledProperty tulajdonság-változás esemény. Kötelező Egyik sem
ExpandCollapseStateProperty tulajdonság-változás esemény. Attól függ. Egyik sem
ToggleStateProperty tulajdonság-változás esemény. Attól függ. Egyik sem
AutomationFocusChangedEvent Kötelező Egyik sem
StructureChangedEvent Kötelező Egyik sem

Régi problémák

A Toggle Pattern csak akkor támogatott, ha a Win32 menüelem be van jelölve, és programozottan meghatározható, hogy szükséges-e a Toggle Pattern támogatása. Mivel a Win32 menüelem nem teszi elérhetővé, hogy ellenőrizhető-e, a rendszer támogatja a minta meghívását, ha a menüelem nincs bejelölve. A rendszer kivételt tesz, hogy mindig támogassa a minta meghívását olyan menüpontok esetében is, amelyek csak a Minta váltását támogatják. Ez azért van így, hogy az ügyfelek ne keveredhessenek össze azzal, hogy a minta meghívását támogató elem (ha a menüelem nincs bejelölve) már nem támogatja a mintát az ellenőrzés után.

Lásd még