Wzorzec kontrolki przewijania
Opisuje wytyczne i konwencje implementowania IScrollProvider, w tym informacje o właściwościach i metodach. Wzorzec sterowania przewijania służy do obsługi kontrolki, która działa jako kontener przewijany dla kolekcji obiektów podrzędnych.
Kontrolka nie jest wymagana, aby używać pasków przewijania do obsługi funkcji przewijania, chociaż często jest to możliwe. Na poniższej ilustracji przedstawiono kontrolkę przewijania, która nie używa pasków przewijania. Aby zapoznać się z przykładami kontrolek implementujących ten wzorzec kontrolki, zobacz typy kontrolek i obsługiwane wzorce kontrolek.
Ten temat zawiera następujące sekcje.
- wytyczne i konwencje implementacji
- wymagane elementy członkowskie dla IScrollProvider
- Tematy pokrewne
Wytyczne i konwencje implementacji
Podczas implementowania wzorca kontrolki przewijania należy pamiętać o następujących wytycznych i konwencjach:
- Elementy podrzędne tej kontrolki muszą implementować IScrollItemProvider.
- Paski przewijania kontrolki kontenera nie obsługują wzorca kontrolki Scroll. Zamiast tego muszą obsługiwać wzorzec kontrolki RangeValue.
- Podczas przewijania jest mierzona w procentach, wszystkie wartości lub kwoty związane z ukończeniem przewijania muszą być znormalizowane do zakresu od 0 do 100.
- Właściwość IScrollProvider::HorizontallyScrollable i VerticallyScrollable są niezależne od właściwości IsEnabled.
- Jeśli właściwość IScrollProvider::HorizontallyScrollable jest FALSE, właściwość HorizontalViewSize powinna być ustawiona na 100 (100%), a właściwość HorizontalScrollPercent powinna być ustawiona na wartość UIA_ScrollPatternNoScroll (-1). Podobnie, jeśli właściwość VerticallyScrollable jest false, właściwość VerticalViewSize powinna być ustawiona na 100 (100%) i właściwość VerticalScrollPercent powinna być ustawiona na wartość UIA_ScrollPatternNoScroll (-1). Dzięki temu klient automatyzacji interfejsu użytkownika firmy Microsoft może używać tych wartości właściwości w SetScrollPercent metody, unikając stanu wyścigu, jeśli kierunek, w jakim klient nie jest zainteresowany przewijaniem, staje się aktywowany.
- Właściwość IScrollProvider::HorizontalScrollPercent jest specyficzna dla ustawień regionalnych. Ustawienie HorizontalScrollPercent na 100 musi ustawić lokalizację przewijania kontrolki na odpowiednik prawej pozycji języków, takich jak angielski, który odczytał od lewej do prawej. Alternatywnie w przypadku języków, takich jak arabski, które odczytują od prawej do lewej, ustawienie HorizontalScrollPercent na 100 musi ustawić lokalizację przewijania na pozycję najbardziej po lewej stronie.
Wymagane elementy członkowskie IScrollProvider
Następujące właściwości i metody są wymagane do zaimplementowania interfejsu IScrollProvider.
Wymagane elementy członkowskie | Typ elementu członkowskiego | Notatki |
---|---|---|
HorizontalScrollPercent | Własność | Żaden |
VerticalScrollPercent | Własność | Żaden |
HorizontalViewSize | Własność | Żaden |
VerticalViewSize | Własność | Żaden |
poziome | Własność | Żaden |
z możliwością rejestracji pionowej | Własność | Żaden |
przewijania | Metoda | Żaden |
SetScrollPercent | Metoda | Żaden |
Ten wzorzec kontrolki nie ma skojarzonych zdarzeń.
Tematy pokrewne
-
Wzorce kontrolek automatyzacji interfejsu użytkownika — omówienie