Поделиться через


Поддержка автоматизации пользовательского интерфейса для типа элемента управления ScrollBar

Замечание

Эта документация предназначена для разработчиков .NET Framework, которые хотят использовать управляемые классы автоматизации пользовательского интерфейса, определенные в пространстве имен System.Windows.Automation. Последние сведения об автоматизации пользовательского интерфейса см. в разделе API автоматизации Windows: автоматизация пользовательского интерфейса.

В этом разделе содержатся сведения о поддержке автоматизации пользовательского интерфейса для типа элемента управления ScrollBar. В службе автоматизации пользовательского интерфейса тип элемента управления — это набор условий, которые должны соответствовать элементу ControlTypeProperty управления для использования свойства. Условия включают конкретные рекомендации по структуре дерева автоматизации пользовательского интерфейса, значениям свойств автоматизации пользовательского интерфейса и шаблонам элементов управления.

Элементы управления полосой прокрутки позволяют пользователю прокручивать содержимое в окне или контейнере элементов. Элемент управления состоит из набора кнопок и джойстика для большого пальца.

В следующих разделах определяется необходимая структура дерева автоматизации пользовательского интерфейса, свойства, шаблоны элементов управления и события для типа элемента управления ScrollBar. Требования к автоматизации пользовательского интерфейса применяются ко всем элементам управления списками, будь то Windows Presentation Foundation (WPF), Win32 или Windows Forms.

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

В следующей таблице представлено представление элемента управления и представление содержимого дерева автоматизации пользовательского интерфейса, относящегося к элементам управления полосой прокрутки и описывающее, что можно содержать в каждом представлении. Дополнительные сведения о дереве автоматизации пользовательского интерфейса см. в разделе "Обзор дерева автоматизации пользовательского интерфейса".

Вид управления Просмотр содержимого
Полоса прокрутки

- Кнопка (2 или 4)
- Палец (0 или1)
Неприменимо. Элемент управления полосы прокрутки не содержит содержимого.

Элемент управления полосы прокрутки всегда имеет от трех до пяти дочерних элементов. Поскольку поддерево имеет более чем один элемент управления кнопкой, необходимо задать конкретное AutomationIdProperty значение для каждого элемента, чтобы сделать их доступными для средств автоматизации тестирования.

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

В следующей таблице перечислены свойства автоматизации пользовательского интерфейса, значения или определения которых особенно важны для элементов управления полосой прокрутки. Обратите внимание, что элемент управления полосой прокрутки никогда не содержит содержимого; её функциональные возможности предоставляются с помощью шаблона элемента управления 'Прокрутка', который поддерживается в прокручиваемом контейнере.

Дополнительные сведения о свойствах автоматизации пользовательского интерфейса см. в разделе "Свойства автоматизации пользовательского интерфейса для клиентов".

Свойство автоматизации пользовательского интерфейса Ценность Примечания.
AutomationIdProperty См. заметки. Значение этого свойства должно быть уникальным для всех элементов управления в приложении.
BoundingRectangleProperty См. заметки. Самый внешний прямоугольник, содержащий весь элемент управления.
IsKeyboardFocusableProperty См. заметки. Если элемент управления может получить фокус клавиатуры, он должен поддерживать это свойство.
NameProperty Null Элемент управления полосой прокрутки не содержит элементов содержимого и NameProperty не требуется задавать.
ClickablePointProperty Не число. Элемент управления полосой прокрутки не имеет точек, доступных для щелчка.
LabeledByProperty Null Полосы прокрутки не имеют меток.
ControlTypeProperty Полоса прокрутки Это значение одинаково для всех платформ. Полосы прокрутки, которые работают в качестве ползунков, должны использовать тип элемента управления Slider.
LocalizedControlTypeProperty Полоса прокрутки Локализованная строка, соответствующая типу элемента управления Button.
IsContentElementProperty Неправда Элемент управления полосой прокрутки никогда не является элементом содержимого. Если полоса прокрутки является автономным элементом управления, она должна соответствовать типу элемента управления Slider и вернуть ControlType.Slider для свойства ControlType.
IsControlElementProperty Верно Полоса прокрутки всегда должна быть элементом управления.
OrientationProperty Верно Элемент управления полосой прокрутки должен всегда предоставлять горизонтальную или вертикальную ориентацию.

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

В следующей таблице перечислены шаблоны элементов управления автоматизации пользовательского интерфейса, которые должны поддерживаться элементами управления полосой прокрутки. Дополнительные сведения о шаблонах элементов управления см. в шаблонах элементов управления автоматизации пользовательского интерфейса. Обратите внимание, что если полоса прокрутки используется только для управления манипуляцией мышью, она не поддерживает шаблоны элементов управления. Если он используется в качестве элемента управления ползунком в приложении, ему должен быть присвоен тип элемента управления "ползунок".

Шаблон элемента управления Поддержка Примечания.
IScrollProvider Никогда Шаблон управления прокруткой никогда не используется напрямую на полосе прокрутки.
IRangeValueProvider Зависит Эта функция должна поддерживаться только в том случае, если в контейнере с полосой прокрутки не поддерживается шаблон элемента управления прокрутки.

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

В следующей таблице перечислены события автоматизации пользовательского интерфейса, которые должны поддерживаться всеми элементами управления полосой прокрутки. Дополнительные сведения о событиях см. в обзоре событий автоматизации пользовательского интерфейса.

Событие автоматизации пользовательского интерфейса Поддержка и значение Примечания.
BoundingRectangleProperty событие изменения свойства. Обязательно Отсутствует
IsOffscreenProperty событие изменения свойства. Обязательно Отсутствует
IsEnabledProperty событие изменения свойства. Обязательно Отсутствует
HorizontallyScrollableProperty событие изменения свойства. Никогда Отсутствует
HorizontalScrollPercentProperty событие изменения свойства. Никогда Отсутствует
HorizontalViewSizeProperty событие изменения свойства. Никогда Отсутствует
VerticalScrollPercentProperty событие изменения свойства. Никогда Отсутствует
VerticallyScrollableProperty событие изменения свойства. Никогда Отсутствует
VerticalViewSizeProperty событие изменения свойства. Никогда Отсутствует
ValueProperty событие изменения свойства. Зависит Отсутствует
AutomationFocusChangedEvent Обязательно Отсутствует
StructureChangedEvent Обязательно Отсутствует

См. также