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


UI Automation-támogatás a DataItem 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 DataItem vezérlőtípus Microsoft UI Automation-támogatásával kapcsolatos információkat tartalmaz. A felhasználói felület automatizálásában a vezérlőtípus olyan feltételek halmaza, amelyeknek egy vezérlőnek meg kell felelnie a ControlTypeProperty tulajdonság használatához. A feltételek konkrét irányelveket tartalmaznak a felhasználói felület automation fastruktúrájához, a felhasználói felület automation tulajdonságértékeihez és a szabályozási mintákhoz.

A Névjegyek listában szereplő bejegyzések egy adatelem-vezérlőre mutatnak példát. Az adatelem-vezérlők olyan információkat tartalmaznak, amelyek egy végfelhasználó számára érdekesek. Ez bonyolultabb, mint az egyszerű listaelem, mert gazdagabb információkat tartalmaz.

A következő szakaszok határozzák meg a szükséges felhasználói felület-automatizálási fastruktúrát, tulajdonságokat, vezérlőmintákat és eseményeket a DataItem vezérlőtípushoz. A felhasználói felület automatizálási követelményei az összes adatelem-vezé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 az adatelem-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 lásd a felhasználói felület automatizálási fájának áttekintését.

Felhasználói felület automatizálási fa – Vezérlőnézet Felhasználói felület automatizálási fa – Tartalomnézet
DataItem

- Változó (0 vagy több; hierarchiában strukturálható)
DataItem

- Változó (0 vagy több; hierarchiában strukturálható)

Az adatrács adatelem-elemei számos objektumot tárolhatnak, beleértve az adatelemek egy másik rétegét, vagy bizonyos rácselemeket, például szöveget, képeket vagy szerkesztési vezérlőket. Ha az adatelemelem egy adott objektumszerepkörrel rendelkezik, az elemet egy adott vezérlőtípusként kell elérhetővé tenni; Például egy ListItem vezérlőtípust a rács egy választható adateleméhez.

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

Az alábbi táblázat felsorolja azokat a tulajdonságokat, amelyek értéke vagy definíciója különösen releváns az adatelem-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 Jegyzetek
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.
ControlTypeProperty DataItem Ez az érték minden felhasználói felületi keretrendszer esetében megegyezik.
IsContentElementProperty Igaz Az adatelem-vezérlőnek mindig tartalomnak kell lennie.
IsControlElementProperty Igaz Az adatelem-vezérlőnek mindig vezérlőnek kell lennie.
IsKeyboardFocusableProperty Lásd a jegyzeteket. Ha a vezérlő képes fogadni a billentyűzetfókuszt, támogatnia kell ezt a tulajdonságot.
ItemStatusProperty Lásd a jegyzeteket. Ha a vezérlő dinamikusan frissülő állapotot tartalmaz, akkor ezt a tulajdonságot támogatni kell, hogy egy kisegítő technológia frissítéseket kapjon az elem állapotának változásakor.
ItemTypeProperty Lásd a jegyzeteket. Ez az a sztringérték, amely az elem alapjául szolgáló objektumot továbbítja a végfelhasználónak. Ilyenek például a "Médiafájl" vagy a "Partner".
LabeledByProperty Null Az adatelem-vezérlők nem rendelkeznek statikus szövegfeliratkal.
LocalizedControlTypeProperty "adatelem" A DataItem vezérlőtípusnak megfelelő honosított sztring.
NameProperty Lásd a jegyzeteket. Az adatelem-vezérlő mindig tartalmaz egy elsődleges szöveges elemet, amely ahhoz kapcsolódik, amit a felhasználó az elem legszemantikusabb azonosítójaként társítana.

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 Microsoft UI Automation-vezérlőmintákat, amelyeket az összes adatelem-vezérlőnek támogatnia kell. A vezérlőmintákról további információt a UI-automatizálás Vezérlőminták áttekintése című témakörben talál.

Vezérlőminta Támogatás Jegyzetek
IExpandCollapseProvider Attól függ. Ha az adatelem kibontható vagy összecsukható az adatok megjelenítéséhez és elrejtéséhez, a kibontási összecsukási mintát támogatni kell.
IGridItemProvider Attól függ. Az adatelemek támogatják a rácselem-mintát, ha egy tárolón belül elérhető az adatelemek olyan gyűjteménye, amelyben az elemek között térben lehet navigálni.
IScrollItemProvider Attól függ. Minden adatelem támogatja a "Scroll Item" mintával való görgetéssel történő megjelenítést, amikor az adattároló több elemet tartalmaz, mint amennyi elfér a képernyőn.
ISelectionItemProvider Igen Minden adatelemnek támogatnia kell a kijelölési elem mintáját, hogy jelezze, mikor van kiválasztva az elem.
ITableItemProvider Attól függ. Ha az adatelem egy Data Grid-vezérlőtípuson belül található, akkor az támogatja ezt a mintát.
IToggleProvider Attól függ. Ha az adatelem olyan állapotot tartalmaz, amely átjárható.
IValueProvider Attól függ. Ha az adatelem elsődleges szövege szerkeszthető, akkor az értékmintát támogatni kell.

Adatelemek használata nagy listákban

A nagy listákat gyakran virtualizálják a felhasználói felületi keretrendszerekben, hogy segítsenek a teljesítményben. Emiatt egy UI Automation-ügyfél nem használhatja a UI Automation lekérdezési funkcióját a teljes fa tartalmának lekaparásához ugyanúgy, mint más elemtárolókban. Az ügyfélnek görgetnie kell az elemet a nézetbe (vagy bontsa ki a vezérlőt az összes értékes beállítás megjelenítéséhez) az adatelem teljes információkészletének elérése előtt.

Amikor meghívja SetFocus az adatelem UI Automation elemét, a Microsoft Windows Explorer-eset sikeresen visszatér, és a fókuszt az adatelem részhalmazán belül a Szerkesztés értékre állítja.

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 adatelem-vezérlőnek támogatnia kell. Az eseményekkel kapcsolatos további információkért tekintse meg a felhasználói felület automatizálási eseményeinek áttekintését.

UI-automatizálás esemény Támogatás Jegyzetek
AutomationFocusChangedEvent Kötelező Egyik sem
BoundingRectangleProperty tulajdonság-változás esemény. Kötelező Egyik sem
IsEnabledProperty tulajdonság-változás esemény. Kötelező Egyik sem
IsOffscreenProperty tulajdonság-változás esemény. Kötelező Egyik sem
NameProperty tulajdonság-változás esemény. Kötelező Egyik sem
StructureChangedEvent Kötelező Egyik sem
InvokedEvent Attól függ. Egyik sem
ExpandCollapseStateProperty tulajdonság-változás esemény. Attól függ. Egyik sem
ElementAddedToSelectionEvent Kötelező Egyik sem
ElementRemovedFromSelectionEvent Kötelező Egyik sem
ElementSelectedEvent Kötelező Egyik sem
ToggleStateProperty tulajdonság-változás esemény. Attól függ. Egyik sem
ValueProperty tulajdonság-változás esemény. Attól függ. Egyik sem

Példa adatelem-vezérlőtípusra

Az alábbi képen egy DataItem vezérlőtípus látható a Listanézet vezérlőelemben, amely támogatja az oszlopok részletes információit.

Listanézet-vezérlő képe két adatelemet tartalmazó

Az alábbiakban megjelenik az adatelem-vezérlőhöz tartozó felhasználói felület automatizálási fája vezérlőnézete és tartalomnézete. Az egyes automatizálási elemek vezérlőmintái zárójelben jelennek meg. A "Contoso" csoport a Data Grid gazdagépvezérlő rácsának is része.

Felhasználói felület automatizálási fa – Vezérlőnézet Felhasználói felület automatizálási fa – Tartalomnézet
- "Contoso" csoport (Tábla, Rács)
- Adattétel "Követeléskezelés.doc" (Táblázatelem, Rácselem, Kijelöléselem, Meghívás)
- "Követelések.doc" kép
- "Név" szerkesztése (Táblázati elem, Rács elem, Érték "Accounts Receivable.doc")
- Szerkesztés „Módosítás dátuma” (TableItem, GridItem, Érték „2006.08.25. 15:29”)
- Szerkesztés "Méret" (GridItem, TableItem, Érték "11,0 KB)
- AdatElem "Accounts Payable.doc" (TáblázatElem, RácsElem, KiválasztásElem, Meghívás)
- ...
- "Contoso" csoport (Tábla, Rács)
- Adattétel "Követeléskezelés.doc" (Táblázatelem, Rácselem, Kijelöléselem, Meghívás)
- "Követelések.doc" kép
- "Név" szerkesztése (Táblázati elem, Rács elem, Érték "Accounts Receivable.doc")
- Szerkesztés „Módosítás dátuma” (TableItem, GridItem, Érték „2006.08.25. 15:29”)
- Szerkesztés "Méret" (GridItem, TableItem, Érték "11,0 KB)
- AdatElem "Accounts Payable.doc" (TáblázatElem, RácsElem, KiválasztásElem, Meghívás)
- …

Ha a rács kijelölhető elemek listáját jelöli, a megfelelő felhasználói felületi elemek a ListItem vezérlőtípussal is elérhetők a DataItem vezérlőtípus helyett. Az előző példában a Csoport ("Contoso") alatt található DataItem elemek ("Fiókok Receivable.doc" és "Fiókok Payable.doc") továbbfejleszthetők úgy, hogy ListItem-vezérlőtípusokként tették őket közzé, mert ez a típus már támogatja a SelectionItem vezérlőmintát.

Lásd még