Podpora automatizace uživatelského rozhraní pro typ ovládacího prvku DataItem
Poznámka:
Tato dokumentace je určená pro vývojáře rozhraní .NET Framework, kteří chtějí používat spravované třídy model UI Automation definované v System.Windows.Automation oboru názvů. Nejnovější informace o model UI Automation najdete v tématu Rozhraní API služby Windows Automation: model UI Automation.
Toto téma obsahuje informace o podpoře microsoft model UI Automation pro typ ovládacího prvku DataItem. V model UI Automation typ ovládacího prvku je sada podmínek, které musí ovládací prvek splňovat, aby bylo možné vlastnost použítControlTypeProperty. Podmínky zahrnují specifické pokyny pro strukturu stromové struktury model UI Automation, model UI Automation hodnoty vlastností a vzory ovládacích prvků.
Položka v seznamu kontaktů je příkladem ovládacího prvku datové položky. Ovládací prvek datové položky obsahuje informace, které jsou pro koncového uživatele zajímavé. Je složitější než jednoduchá položka seznamu, protože obsahuje bohatší informace.
Následující části definují požadovanou model UI Automation stromovou strukturu, vlastnosti, vzory ovládacích prvků a události pro typ ovládacího prvku DataItem. Požadavky na model UI Automation platí pro všechny ovládací prvky datových položek, ať už windows Presentation Foundation (WPF), Win32 nebo model Windows Forms.
Požadovaná struktura stromu model UI Automation
Následující tabulka znázorňuje zobrazení ovládacích prvků a zobrazení obsahu stromu model UI Automation, které se týká ovládacích prvků datových položek, a popisuje, co může být obsaženo v jednotlivých zobrazeních. Další informace o stromu model UI Automation najdete v tématu model UI Automation Stromový přehled.
strom model UI Automation – zobrazení ovládacího prvku | strom model UI Automation – zobrazení obsahu |
---|---|
Dataitem – Liší se (0 nebo více; může být strukturována v hierarchii) |
Dataitem – Liší se (0 nebo více; může být strukturována v hierarchii) |
Prvek datové položky v mřížce dat může hostovat celou řadu objektů, včetně jiné vrstvy datových položek nebo určitých prvků mřížky, jako je text, obrázky nebo ovládací prvky pro úpravy. Pokud prvek datové položky má určitou roli objektu, prvek by měl být vystaven jako konkrétní typ ovládacího prvku; Například typ ovládacího prvku ListItem pro vybratelnou datovou položku v mřížce.
Požadované vlastnosti model UI Automation
Následující tabulka uvádí vlastnosti, jejichž hodnota nebo definice jsou zvláště relevantní pro ovládací prvky datové položky. Další informace o model UI Automation vlastnosti naleznete v tématu model UI Automation Vlastnosti pro klienty.
Vlastnost | Hodnota | Notes |
---|---|---|
AutomationIdProperty | Viz poznámky. | Hodnota této vlastnosti musí být jedinečná pro všechny ovládací prvky v aplikaci. |
BoundingRectangleProperty | Viz poznámky. | Vnější obdélník, který obsahuje celý ovládací prvek. |
ClickablePointProperty | Viz poznámky. | Podporuje se, pokud existuje ohraničující obdélník. Pokud ne každý bod uvnitř ohraničujícího obdélníku je možné kliknout a provést specializované testování hitů, pak přepsat a poskytnout kliknutelný bod. |
ControlTypeProperty | Dataitem | Tato hodnota je stejná pro všechny architektury uživatelského rozhraní. |
IsContentElementProperty | True | Ovládací prvek datové položky musí být vždy obsahem. |
IsControlElementProperty | True | Ovládací prvek datové položky musí být vždy ovládací prvek. |
IsKeyboardFocusableProperty | Viz poznámky. | Pokud ovládací prvek může přijímat fokus klávesnice, musí tuto vlastnost podporovat. |
ItemStatusProperty | Viz poznámky. | Pokud ovládací prvek obsahuje stav, který se aktualizuje dynamicky, musí být tato vlastnost podporována, aby technologie usnadnění může přijímat aktualizace při změně stavu prvku. |
ItemTypeProperty | Viz poznámky. | Toto je řetězcová hodnota, která koncovému uživateli předá podkladový objekt, který položka představuje. Příklady jsou "Multimediální soubor" nebo "Kontakt". |
LabeledByProperty | Null |
Ovládací prvky datových položek nemají statický textový popisek. |
LocalizedControlTypeProperty | "datová položka" | Lokalizovaný řetězec odpovídající typu ovládacího prvku DataItem. |
NameProperty | Viz poznámky. | Ovládací prvek datové položky vždy obsahuje primární textový prvek, který se vztahuje k tomu, co by uživatel přidružil jako sémantický identifikátor položky. |
Požadované vzory ovládacích prvků model UI Automation
V následující tabulce jsou uvedeny vzory ovládacích prvků Microsoft model UI Automation, které musí podporovat všechny ovládací prvky datových položek. Další informace o vzorech ovládacích prvků najdete v tématu model UI Automation Přehled vzorů ovládacích prvků.
Vzor ovládacího prvku | Technická podpora | Notes |
---|---|---|
IExpandCollapseProvider | Závisí | Pokud je možné položku dat rozbalit nebo sbalit, aby se zobrazily a skrývaly informace, musí být podporován vzor Rozbalit sbalit. |
IGridItemProvider | Závisí | Datové položky budou podporovat vzor Položky mřížky, pokud je kolekce datových položek dostupná v kontejneru, který může být prostorově přecháděný mezi položkami. |
IScrollItemProvider | Závisí | Všechny datové položky podporují možnost posouvání v zobrazení se vzorem Posunout položku, pokud má jejich datový kontejner více položek, než se vejde na obrazovku. |
ISelectionItemProvider | Ano | Všechny datové položky musí podporovat vzor Položka výběru, aby bylo možné určit, kdy je položka vybrána. |
ITableItemProvider | Závisí | Pokud je datová položka obsažena v ovládacím typu Datové mřížky, bude tento vzor podporovat. |
IToggleProvider | Závisí | Pokud datová položka obsahuje stav, který lze cyklicky procházet. |
IValueProvider | Závisí | Pokud je primární text datové položky upravitelný, musí být podporován vzor hodnoty. |
Práce s datovými položkami ve velkých seznamech
Velké seznamy jsou často data virtualizovaná v rámci architektur uživatelského rozhraní, která pomáhají s výkonem. Z tohoto důvodu nemůže klient model UI Automation použít funkci dotazu model UI Automation k výstřižku obsahu celého stromu stejným způsobem jako v jiných kontejnerech položek. Klient by se měl posouvat do zobrazení (nebo rozbalit ovládací prvek, aby se zobrazily všechny cenné možnosti) před přístupem k úplné sadě informací z datové položky.
Při volání SetFocus
prvku model UI Automation pro položku dat se případ Průzkumníka Microsoft Windows úspěšně vrátí a fokus bude nastaven na položku Upravit v podstromu datové položky.
Požadované události model UI Automation
Následující tabulka uvádí model UI Automation události, které musí být podporovány všemi ovládacími prvky datových položek. Další informace oudálostch model UI Automation ch
událost model UI Automation | Technická podpora | Notes |
---|---|---|
AutomationFocusChangedEvent | Požaduje se | Nic |
BoundingRectangleProperty událost změněná vlastností. | Požaduje se | Nic |
IsEnabledProperty událost změněná vlastností. | Požaduje se | Nic |
IsOffscreenProperty událost změněná vlastností. | Požaduje se | Nic |
NameProperty událost změněná vlastností. | Požaduje se | Nic |
StructureChangedEvent | Požaduje se | Nic |
InvokedEvent | Závisí | Nic |
ExpandCollapseStateProperty událost změněná vlastností. | Závisí | Nic |
ElementAddedToSelectionEvent | Požaduje se | Nic |
ElementRemovedFromSelectionEvent | Požaduje se | Nic |
ElementSelectedEvent | Požaduje se | Nic |
ToggleStateProperty událost změněná vlastností. | Závisí | Nic |
ValueProperty událost změněná vlastností. | Závisí | Nic |
Příklad typu ovládacího prvku DataItem
Následující obrázek znázorňuje typ ovládacího prvku DataItem v ovládacím prvku Zobrazení seznamu s podporou bohatých informací pro sloupce.
Zobrazení ovládacího prvku a zobrazení obsahu model UI Automation stromu, který se týká ovládacího prvku datové položky, se zobrazí níže. Vzory ovládacích prvků pro každý prvek automatizace jsou zobrazeny v závorkách. Skupina Contoso je také součástí mřížky ovládacího prvku Hostitel datové mřížky.
strom model UI Automation – zobrazení ovládacího prvku | strom model UI Automation – zobrazení obsahu |
---|---|
– Skupina Contoso (tabulka, mřížka) – DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) – Obrázek "Účty Receivable.doc" - Upravit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") - Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM") - Upravit "Velikost" (GridItem, TableItem, Hodnota "11,0 kB) – DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - ... |
– Skupina Contoso (tabulka, mřížka) – DataItem "Accounts Receivable.doc" (TableItem, GridItem, SelectionItem, Invoke) – Obrázek "Účty Receivable.doc" - Upravit "Name" (TableItem, GridItem, Value "Accounts Receivable.doc") - Edit "Date modified" (TableItem, GridItem, Value "8/25/2006 3:29 PM") - Upravit "Velikost" (GridItem, TableItem, Hodnota "11,0 kB) – DataItem "Accounts Payable.doc" (TableItem, GridItem, SelectionItem, Invoke) - ... |
Pokud mřížka představuje seznam položek, které lze vybrat, mohou být odpovídající prvky uživatelského rozhraní vystaveny s typem ovládacího prvku ListItem namísto typu ovládacího prvku DataItem. V předchozím příkladu lze prvky DataItem ("Accounts Receivable.doc" a "Accounts Payable.doc") v části Group ("Contoso") vylepšit jejich zveřejněním jako typy ovládacích prvků ListItem, protože tento typ již podporuje vzor ovládacího prvku SelectionItem.