Implementace vzoru ovládacích prvků posuvníku model UI Automation
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.
Tento článek představuje pokyny a konvence pro implementaci IScrollProvider, včetně informací o událostech a vlastnostech. Odkazy na další odkazy jsou uvedeny na konci tématu.
Vzor ScrollPattern ovládacího prvku slouží k podpoře ovládacího prvku, který funguje jako posuvný kontejner pro kolekci podřízených objektů. Ovládací prvek není nutný k použití posuvníků pro podporu funkce posouvání, i když to obvykle dělá.
Příklad ovládacího prvku pro posouvání, který nepoužívá posuvníky
Příklady ovládacích prvků, které tento ovládací prvek implementují, naleznete v tématu Mapování vzorů ovládacích prvků pro model UI Automation klienty.
Pokyny a konvence implementace
Při implementaci vzoru ovládacích prvků Scroll si všimněte následujících pokynů a konvencí:
Podřízené položky tohoto ovládacího prvku musí implementovat IScrollItemProvider.
Posuvníky ovládacího prvku kontejneru nepodporují ScrollPattern vzor ovládacího prvku. Místo toho musí podporovat RangeValuePattern řídicí vzor.
Při posouvání se měří v procentech, musí být všechny hodnoty nebo částky související s dokončením posouvání normalizovány do rozsahu 0 až 100.
HorizontallyScrollableProperty a VerticallyScrollableProperty jsou nezávislé na IsEnabledProperty.
Pokud HorizontallyScrollableProperty =
false
by pak HorizontalViewSizeProperty měla být nastavena na 100 % a HorizontalScrollPercentProperty měla by být nastavena na NoScrollhodnotu . Podobně pokud VerticallyScrollableProperty = VerticalViewSizePropertyfalse
by pak mělo být nastaveno na 100 procent a VerticalScrollPercentProperty mělo by být nastaveno na .NoScroll To umožňuje klientovi model UI Automation použít tyto hodnoty vlastností v rámci SetScrollPercent metody a vyhnout se konfliktu časování, pokud se aktivuje směr, který klient nemá zájem o posouvání.HorizontalScrollPercent je specifické pro národní prostředí. Nastavení HorizontalScrollPercent = 100.0 musí nastavit umístění posouvání ovládacího prvku na ekvivalent jeho pozice nejvíce vpravo pro jazyky, jako je angličtina, která čte zleva doprava. Pro jazyky, jako je arabština, která čte zprava doleva, musí nastavení HorizontalScrollPercent = 100.0 nastavit umístění posuvníku na pozici úplně vlevo.
Požadované členy pro IScrollProvider
Pro implementaci IScrollProviderjsou vyžadovány následující vlastnosti a metody .
Požadovaný člen | Typ členu | Notes |
---|---|---|
HorizontalScrollPercent | Vlastnost | Nic |
VerticalScrollPercent | Vlastnost | Nic |
HorizontalViewSize | Vlastnost | Nic |
VerticalViewSize | Vlastnost | Nic |
HorizontallyScrollable | Vlastnost | Nic |
VerticallyScrollable | Vlastnost | Nic |
Scroll | metoda | Nic |
SetScrollPercent | metoda | Nic |
Tento vzor ovládacího prvku nemá žádné přidružené události.
Výjimky
Poskytovatelé musí vyvolat následující výjimky.
Typ výjimky | Podmínka |
---|---|
ArgumentException | Scroll vyvolá tuto výjimku, pokud ovládací prvek podporuje SmallIncrement hodnoty výhradně pro vodorovné nebo svislé posouvání, ale LargeIncrement hodnota je předána. |
ArgumentException | SetScrollPercent vyvolá tuto výjimku, pokud je předána hodnota, která nelze převést na dvojitou hodnotu. |
ArgumentOutOfRangeException | SetScrollPercent vyvolá tuto výjimku, pokud je předána hodnota větší než 100 nebo menší než 0 (s výjimkou -1, která je ekvivalentní NoScroll). |
InvalidOperationException | Obě Scroll a SetScrollPercent vyvolat tuto výjimku při pokusu o posouvání v nepodporovaném směru. |
Viz také
- Přehled vzorů ovládacích prvků pro automatizaci uživatelského rozhraní
- Podpora vzorů ovládacích prvků u zprostředkovatele automatizace uživatelského rozhraní
- Vzory ovládacích prvků automatizace uživatelského rozhraní pro klienty
- Přehled stromu automatizace uživatelského rozhraní
- Použití mezipaměti při automatizaci uživatelského rozhraní