Udostępnij za pośrednictwem


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.

zrzut ekranu przedstawiający kontrolkę przewijania bez pasków przewijania

Ten temat zawiera następujące sekcje.

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ń.

typów kontrolek i ich obsługiwanych wzorców kontrolek

Wzorce kontrolek automatyzacji interfejsu użytkownika — omówienie

Omówienie drzewa automatyzacji interfejsu użytkownika