Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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ó"
|
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.