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


A felhasználói felület automatizálásának vezérlési mintáinak áttekintése

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 az áttekintés bemutatja a Microsoft UI Automation vezérlési mintáit. A vezérlőminták lehetővé teszik, hogy kategorizálják és elérhetővé tegyék a vezérlő funkcióit a vezérlő típusától vagy megjelenésétől függetlenül.

A felhasználói felület automatizálása vezérlőmintákat használ a gyakori vezérlési viselkedések megjelenítéséhez. A meghívható vezérlőkhöz (például gombokhoz) például a Meghívás vezérlőmintát, a görgetősávokat (például listamezőket, listanézeteket vagy kombinált listákat) tartalmazó vezérlőelemekhez pedig a Görgetés vezérlőmintát használja. Mivel minden vezérlőminta egy külön funkciót jelöl, kombinálhatók az adott vezérlő által támogatott funkciók teljes halmazának leírásához.

Megjegyzés:

Az összesítő vezérlőknek – amelyek a felhasználói felületet (felhasználói felületet) biztosítják a szülő által közzétett funkciókhoz – a gyermekvezérlőkhöz általában társított összes vezérlőmintát implementálniuk kell. A gyermekvezérlőknek azonban nem kell ugyanazokat a szabályozási mintákat implementálniuk.

Felhasználói felület automatizálási vezérlőmintájának összetevői

A vezérlőminták támogatják a vezérlőkben elérhető különálló funkciók meghatározásához szükséges módszereket, tulajdonságokat, eseményeket és kapcsolatokat.

  • A felhasználói felület automation eleme és szülője, gyermekei és testvérei közötti kapcsolat az elem struktúráját írja le a felhasználói felület automation fáján belül.

  • A metódusok lehetővé teszik, hogy a felhasználói felületi automatizálási ügyfelek manipulálják a vezérlőt.

  • A tulajdonságok és események információt nyújtanak a vezérlőminta működéséről, valamint a vezérlő állapotáról.

A vezérlőminták a felhasználói felülethez kapcsolódnak, mivel az interfészek a komponensobjektum-modell (COM) objektumaihoz kapcsolódnak. A COM-ban lekérdezhet egy objektumot, hogy megkérdezze, milyen felületeket támogat, majd használhatja ezeket a felületeket a funkciók eléréséhez. A felhasználói felületi automatizálásban a felhasználói felületi automatizálási ügyfelek megkérdezhetik a vezérlőt, hogy mely vezérlőmintákat támogatja, majd a támogatott vezérlőminták által közzétett tulajdonságok, módszerek, események és struktúrák segítségével kezelhetik a vezérlőt. Egy többsoros szerkesztési mező esetében például a felhasználói felületi automatizálási szolgáltatók a IScrollProvider-t implementálják. Ha egy ügyfél tudja, hogy egy AutomationElement vezérlőminta támogatja a ScrollPattern vezérlőmintát, a vezérlő által közzétett tulajdonságokat, metódusokat és eseményeket használhatja a vezérlő módosításához, vagy hozzáférhet a vezérlővel kapcsolatos információkhoz.

Felhasználói felületi automatizálási szolgáltatók és ügyfelek

A felhasználói felületi automatizálási szolgáltatók vezérlőmintákat implementálnak, hogy elérhetővé tegyék a vezérlő által támogatott bizonyos funkciók megfelelő viselkedését.

A felhasználói felületi automatizálási ügyfelek hozzáférnek a felhasználói felületi automatizálási mintaosztályok módszereihez és tulajdonságaihoz, és a felhasználói felülettel kapcsolatos információk lekérésére vagy a felhasználói felület módosítására használják őket. Ezek a vezérlőmintaosztályok a System.Windows.Automation névtérben találhatók (például InvokePattern és SelectionPattern).

AutomationElement Az ügyfelek metódusokkal (például AutomationElement.GetCurrentPropertyValue vagy AutomationElement.GetCachedPropertyValue) vagy a közös nyelvi futtatókörnyezet (CLR) hozzáférőivel férnek hozzá a felhasználói felület automatizálási tulajdonságaihoz minta szerint. ** Minden vezérlőminta-osztálynak van egy mezője (például InvokePattern.Pattern vagy SelectionPattern.Pattern), amely azonosítja a vezérlőmintát, és paraméterként átadható a GetCachedPattern vagy a GetCurrentPattern-nek, hogy lekérje azt a mintát egy AutomationElement számára.

Dinamikus vezérlési minták

Egyes vezérlők nem mindig támogatják ugyanazt a vezérlőmintát. A vezérlési minták támogatottnak minősülnek, ha elérhetők egy felhasználói felületi Automation-ügyfél számára. A többsoros szerkesztőmezők például csak akkor engedélyezik a függőleges görgetést, ha több sornyi szöveget tartalmaz, mint amennyi megjeleníthető a megjeleníthető területen. A görgetés le van tiltva, ha elegendő szöveg van eltávolítva, így a görgetés már nem szükséges. Ebben a példában a ScrollPattern vezérlőminta dinamikusan támogatott a vezérlő aktuális állapotától függően (hogy mennyi szöveg szerepel a szerkesztési mezőben).

Vezérlőmintaosztályok és interfészek

Az alábbi táblázat a felhasználói felület automatizálásának vezérlési mintáit ismerteti. A táblázat felsorolja a felhasználói felületi automatizálási ügyfelek által a vezérlési minták eléréséhez használt osztályokat, valamint a felhasználói felületi automatizálási szolgáltatók által implementálandó felületeket.

Vezérlőmintázat-osztály Szolgáltatói felület Leírás
DockPattern IDockProvider Dokkolótárolóban rögzíthető vezérlőkhöz használható. Például eszköztárak vagy eszközpaletták.
ExpandCollapsePattern IExpandCollapseProvider Kibontható vagy összecsukható vezérlőkhöz használható. Például egy alkalmazás menüelemeit, például a Fájl menüt.
GridPattern IGridProvider Olyan vezérlőkhöz használható, amelyek támogatják a rács funkcióit, például a méretezést és a megadott cellába való áthelyezést. Például a Nagy ikon nézet a Windows Intézőben vagy egyszerű táblázatok fejlécek nélkül a Microsoft Wordben.
GridItemPattern IGridItemProvider A rácsokon belüli cellákat tartalmazó vezérlőkhöz használatos. Az egyes celláknak támogatniuk kell a GridItem mintát. A Microsoft Windows Explorer részletes nézetében például minden cella látható.
InvokePattern IInvokeProvider Vezérlőelemekhez használható, amelyek meghívhatók, például gombok.
MultipleViewPattern IMultipleViewProvider Olyan vezérlőkhöz használható, amelyek ugyanazon információhalmaz, adat vagy gyermek több ábrázolása között válthatnak. Egy listanézet például azt szabályozza, hogy az adatok hol érhetők el miniatűrök, csempék, ikonok, lista vagy részletnézetekben.
RangeValuePattern IRangeValueProvider Olyan vezérlőkhöz használható, amelyek értéktartománya alkalmazható a vezérlőre. Egy éveket tartalmazó spinner vezérlőelem például 1900 és 2010 közötti tartományt tartalmazhat, míg a hónapokat bemutató másik tárcsavezérlő 1 és 12 közötti tartományt tartalmazhat.
ScrollPattern IScrollProvider Görgethető vezérlőkhöz használható. Például egy olyan vezérlő, amely görgetősávokkal rendelkezik, amelyek aktívak, ha több információ áll rendelkezésre, mint amennyit a vezérlő megjeleníthető területén megjeleníthet.
ScrollItemPattern IScrollItemProvider Olyan vezérlőkhöz használható, amelyek görgetőlistájában egyes elemek szerepelnek. Például egy lista vezérlőelem, amely a görgetési listában szereplő egyes elemeket, mint például egy kombinált mező vezérlőelemet, tartalmaz.
SelectionPattern ISelectionProvider Tárolóvezérlők kiválasztásához használható. Például listamezők és kombinált listák.
SelectionItemPattern ISelectionItemProvider A kijelölési tároló vezérlőinek egyes elemeihez, például listamezőkhöz és kombinált listákhoz használható.
TablePattern ITableProvider Rácsot és fejlécadatokat tartalmazó vezérlőkhöz használható. Például Microsoft Excel-munkalapok.
TableItemPattern ITableItemProvider Tábla elemeihez használatos.
TextPattern ITextProvider Szöveges információkat közzétenő vezérlők és dokumentumok szerkesztésére szolgál.
TogglePattern IToggleProvider Olyan vezérlőkhöz használható, ahol az állapot váltható. Jelölje be például a jelölőnégyzeteket és az ellenőrizhető menüelemeket.
TransformPattern ITransformProvider Átméretezhető, áthelyezhető és elforgatható vezérlőkhöz használható. A transzformációs vezérlő minta tipikus felhasználási területei a tervezők, űrlapok, grafikus szerkesztők és rajzoló alkalmazások.
ValuePattern IValueProvider Lehetővé teszi, hogy az ügyfelek értékeket szerezzenek be vagy állítsanak be olyan vezérlőkre, amelyek nem támogatnak értéktartományt. Például egy dátum-időválasztó.
WindowPattern IWindowProvider A Windowsra vonatkozó információkat teszi elérhetővé, amely a Microsoft Windows operációs rendszer alapvető fogalma. A windowsos vezérlők például a felső szintű alkalmazásablakok (Microsoft Word, Microsoft Windows Explorer stb.), a több dokumentumból álló felület (MDI) gyermekablakai és a párbeszédpanelek.

Lásd még