Шаблон элемента управления прокруткой

Описание рекомендаций и соглашений по реализации IScrollProvider, включая сведения о свойствах и методах. Шаблон элемента управления Scroll используется для поддержки элемента управления, который выступает в качестве прокручиваемого контейнера для коллекции дочерних объектов.

Элемент управления не требуется использовать полосы прокрутки для поддержки функций прокрутки, хотя обычно это делается. На следующем рисунке показан элемент управления прокруткой, который не использует полосы прокрутки. Примеры элементов управления, реализующих этот шаблон, см. в разделах Типы элементов управления и поддерживаемые ими шаблоны элементов управления.

Снимок экрана: элемент управления прокруткой без полос прокрутки

В этом разделе содержатся следующие подразделы.

Правила и соглашения реализации

При реализации шаблона элемента управления Прокрутка обратите внимание на следующие рекомендации и соглашения.

  • Дочерние элементы этого элемента управления должны реализовывать IScrollItemProvider.
  • Полосы прокрутки контейнерного элемента управления не поддерживают шаблон элемента управления Scroll . Вместо этого они должны поддерживать шаблон элемента управления RangeValue .
  • Если прокрутка измеряется в процентах, все значения или величины, связанные с делением шкалы прокрутки, должны быть нормализованы в диапазоне от 0 до 100.
  • Свойства IScrollProvider::HorizontallyScrollable и VerticallyScrollable не зависят от свойства IsEnabled .
  • Если свойство IScrollProvider::HorizontallyScrollable имеет значение FALSE, свойство HorizontalViewSize должно иметь значение 100 (100 %), а для свойства HorizontalScrollPercentзначение UIA_ScrollPatternNoScroll (-1). Аналогичным образом, если свойство VerticallyScrollable имеет значение FALSE, свойство VerticalViewSize должно иметь значение 100 (100 %), а для свойства VerticalScrollPercentзначение UIA_ScrollPatternNoScroll (-1). Это позволяет клиенту Microsoft модель автоматизации пользовательского интерфейса использовать эти значения свойств в методе SetScrollPercent, избегая состояния гонки, если активируется направление, в которое клиент не заинтересован в прокрутке.
  • Свойство IScrollProvider::HorizontalScrollPercent зависит от языкового стандарта. Для параметра HorizontalScrollPercent значение 100 должно быть задано расположение прокрутки элемента управления, эквивалентное его крайней правой позиции для таких языков, как английский, которые читают слева направо. Кроме того, для таких языков, как арабский, которые читают справа налево, для параметра HorizontalScrollPercent значение 100 необходимо задать для прокрутки крайнее левое положение.

Обязательные члены для IScrollProvider

Для реализации интерфейса IScrollProvider требуются следующие свойства и методы.

Обязательные члены Тип члена Примечания
HorizontalScrollPercent Свойство Нет
VerticalScrollPercent Свойство Нет
HorizontalViewSize Свойство Нет
VerticalViewSize Свойство Нет
HorizontallyScrollable Свойство Нет
VerticallyScrollable Свойство Нет
Прокрутки Метод Нет
SetScrollPercent Метод Нет

 

Этот шаблон элемента управления не имеет связанных событий.

Типы элементов управления и поддерживаемые ими шаблоны элементов управления

Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса

Общие сведения о дереве модели автоматизации пользовательского интерфейса