Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Popisuje pokyny a konvence pro implementaci IExpandCollapseProvider, včetně informací o vlastnostech, metodách a událostech. ExpandCollapse vzor ovládacího prvku se používá k podpoře ovládacích prvků, které vizuálně rozbalují zobrazení dalšího obsahu a sbalení ke skrytí obsahu.
Příklady ovládacích prvků, které tento vzor ovládacích prvků implementují, najdete v tématu typy ovládacích prvků a jejich podporované vzory ovládacích prvků.
Toto téma obsahuje následující části.
Pokyny a konvence implementace
Při implementaci modelu kontroly ExpandCollapse si všimněte následujících pokynů a konvencí:
Agregační ovládací prvky vytvořené s podřízenými objekty, které poskytují uživatelské rozhraní s rozbalením/sbalením funkcí, musí podporovat ExpandCollapse vzor ovládacího prvku, zatímco jejich podřízené prvky ne. Například ovládací prvek pole se seznamem je sestaven pomocí kombinace ovládacích prvků seznamu, tlačítka a úprav, ale je to pouze nadřazené pole se seznamem, které musí podporovat ExpandCollapse vzor ovládacího prvku.
Poznámka
Výjimkou je ovládací prvek nabídky, což je agregace jednotlivých objektů položek nabídky. Objekty položek nabídky mohou podporovat ExpandCollapse vzor ovládacího prvku, ale nadřazený ovládací prvek nabídky nemůže. Podobná výjimka platí pro ovládací prvky stromové a stromové položky.
Když IExpandCollapseProvider::ExpandCollapseState ovládacího prvku je nastaven na ExpandCollapseState_LeafNode, všechny ExpandCollapse funkce jsou aktuálně neaktivní pro ovládací prvek a jediné informace, které lze získat pomocí tohoto vzoru ovládacího prvku, je ExpandCollapseState. Pokud jsou následně přidány nějaké podřízené objekty, ExpandCollapseState změny a ExpandCollapse funkce je aktivována.
ExpandCollapseState odkazuje pouze na viditelnost okamžitých podřízených objektů; neodkazuje na viditelnost všech následnických objektů.
IExpandCollapseProvider::Expand a Sbalit funkci je specifická pro řízení. Tady jsou příklady tohoto chování.
- Osobní nabídka Office může být položka nabídky se třemi stavy (Rozbalené, Sbalené a Částečně rozbalené), kde ovládací prvek určuje stav, který má být přijat při Rozbalit nebo Sbalit.
- Volání Rozbalit ve stromové položce může zobrazit všechny potomky nebo pouze okamžité podřízené položky.
- Pokud volání Rozbalit nebo Sbalit na ovládacím prvku udržuje stav jeho potomků, měla by být odeslána událost změny viditelnosti, ne událost změny stavu. Pokud nadřazený ovládací prvek při sbaleném stavu svých potomků neudržuje, může ovládací prvek zničit všechny potomky, které již nejsou viditelné, a vyvolat zničenou událost; nebo může změnit ExpandCollapseState pro každého potomka a zvýšit viditelnost události změny.
Chcete-li zaručit navigaci, je žádoucí, aby objekt byl ve stromu Microsoft UI Automation (s odpovídajícím stavem viditelnosti) bez ohledu na jeho nadřazené ExpandCollapseState. Pokud se potomci generují na vyžádání, můžou se zobrazit pouze ve stromu automatizace uživatelského rozhraní po prvním zobrazení nebo pouze v době, kdy jsou viditelné.
Požadované členy pro IExpandCollapseProvider
Následující vlastnosti, metody a události jsou vyžadovány pro implementaci IExpandCollapseProvider rozhraní.
| Požadované členy | Typ členu | Poznámky |
|---|---|---|
| ExpandCollapseState | Vlastnost | Žádný |
| Rozbalit | Metoda | Žádný |
| sbalit | Metoda | Žádný |
| IUIAutomationPropertyChangedEventHandler | Událost | Tento ovládací prvek nemá žádné přidružené události; použijte tuto obecnou obslužnou rutinu události. |
Související témata
-
typy ovládacích prvků a jejich podporované vzory ovládacích prvků
-
Přehled vzorů ovládacích prvků automatizace uživatelského rozhraní