Тип элемента управления list
В этом разделе содержатся сведения о поддержке службы автоматизации пользовательского интерфейса Майкрософт для типа элемента управления списка.
Тип элемента управления списка позволяет упорядочивать плоскую группу или группы элементов и позволяет пользователю выбрать один или несколько элементов. Тип элемента управления List имеет свободное ограничение на то, какие типы дочерних элементов могут содержаться. Это позволяет поставщикам автоматизации пользовательского интерфейса поддерживать известный элемент для контейнеров выбора.
В следующих разделах определяется необходимая структура дерева автоматизации пользовательского интерфейса, свойства, шаблоны элементов управления и события для типа элемента управления List. Требования к автоматизации пользовательского интерфейса применяются ко всем элементам управления списка, где платформа и платформа пользовательского интерфейса интегрирует поддержку автоматизации пользовательского интерфейса для типов элементов управления и шаблонов элементов управления.
В этом разделе содержатся следующие разделы.
- типичная структура дерева
- соответствующие свойства
- необходимые шаблоны элементов управления и свойства
- обязательные события
- связанные разделы
Типичная структура дерева
В следующей таблице представлено типичное представление элемента управления и содержимого дерева автоматизации пользовательского интерфейса, относящегося к элементам управления списком, и описывает, что можно содержать в каждом представлении. Дополнительные сведения о дереве автоматизации пользовательского интерфейса см. в обзоре дерева автоматизации пользовательского интерфейса.
Представление элемента управления | Представление содержимого |
---|---|
Содержит элементы, соответствующие элементам управления. | Удаляет избыточные сведения из дерева, чтобы вспомогательные технологии работали с наименьшим набором сведений, значимых для конечного пользователя. |
|
|
Представление элемента управления, реализующего тип элемента управления List (например, элемент управления списком), состоит из следующих элементов:
- Ноль или больше элементов в элементе управления списком (элементы могут быть основаны на типах элементов управления ListItem или DataItem).
- Ноль или больше элементов управления группами в элементе управления списком
- Ноль, один или два элемента управления полосы прокрутки
Представление содержимого элемента управления, реализующего тип элемента управления List (например, элемент управления списком), состоит из следующих элементов:
- Ноль или больше элементов в элементе управления списком (элементы могут быть основаны на типах элементов управления ListItem или DataItem).
- Ноль или несколько групп в элементе управления списком
Элемент управления списком не должен содержать элементы с иерархической связью, отличной от группировки. Если элементы имеют дочерние элементы в дереве автоматизации пользовательского интерфейса, контейнер списка должен быть основан на типе элемента управления дерево.
Элементы, доступные для выбора в элементе управления списком, будут доступны потомкам в дереве автоматизации пользовательского интерфейса элемента управления списком. Все элементы в элементе управления списком должны принадлежать одной группе выбора. Элементы, которые можно выбрать в списке, должны предоставляться как ListItem (вместо типов элементов управления DataItem DataItem).
Соответствующие свойства
В следующей таблице перечислены свойства автоматизации пользовательского интерфейса, значение или определение которых особенно важно для типа элемента управления List. Дополнительные сведения о свойствах автоматизации пользовательского интерфейса см. в получения свойств из элементов автоматизации пользовательского интерфейса.
Свойство автоматизации пользовательского интерфейса | Ценность | Примечания |
---|---|---|
UIA_AutomationIdPropertyId | См. заметки. | Значение этого свойства должно быть уникальным среди всех одноранговых элементов в необработанном представлении дерева автоматизации пользовательского интерфейса. |
UIA_BoundingRectanglePropertyId | См. заметки. | Самый внешний прямоугольник, содержащий весь элемент управления. |
UIA_ClickablePointPropertyId | См. заметки. | Если элемент управления списком имеет указатель мыши (точка, которую можно щелкнуть, чтобы привести к фокусу списка), эта точка должна быть предоставлена с помощью этого свойства. Если значение свойства UIA_IsOffscreenPropertyId равно TRUE, попытка получить это свойство приводит к ошибке UIA_E_NOCLICKABLEPOINT. |
UIA_ControlTypePropertyId | списка | |
UIA_HelpTextPropertyId | См. заметки. | Текст справки для элементов управления списком должен объяснить, почему пользователю предлагается выбрать вариант из списка параметров. Например, "Выбор элемента из этого списка установит разрешение дисплея для монитора". |
UIA_IsContentElementPropertyId | TRUE | Элемент управления списком всегда включается в представление содержимого дерева автоматизации пользовательского интерфейса. |
UIA_IsControlElementPropertyId | TRUE | Элемент управления списком всегда включается в представление элемента управления дерева автоматизации пользовательского интерфейса. |
UIA_IsKeyboardFocusablePropertyId | См. заметки. | Если элемент управления может получить фокус клавиатуры, он должен поддерживать это свойство. |
UIA_LabeledByPropertyId | См. заметки. | Если есть статическую текстовую метку, это свойство должно предоставить ссылку на этот элемент управления. |
UIA_LocalizedControlTypePropertyId | См. заметки. | Локализованная строка, соответствующая типу элемента управления списка. Значение по умолчанию — list для en-US или английского языка (США). |
UIA_NamePropertyId | См. заметки. | Значение свойства элемента управления списка Name должно передать категорию параметров, из которых запрашивается выбрать пользователь. Обычно это свойство получает имя из статической текстовой метки. Если нет статической текстовой метки, разработчик приложения должен предоставить значение для свойства Name. Единственное время, когда это свойство не требуется для элементов управления списками, — если элемент управления используется в поддереве другого элемента управления. |
Обязательные шаблоны элементов управления и свойства
В следующей таблице перечислены шаблоны элементов управления автоматизации пользовательского интерфейса, которые должны поддерживаться всеми элементами управления списками. Дополнительные сведения о шаблонах элементов управления см. в шаблонах элементов управления автоматизации пользовательского интерфейса.
Управление шаблоном или свойством шаблонов | Поддержка и значение | Примечания |
---|---|---|
IGridProvider | Зависит | Реализуйте шаблон сетки, когда навигация по сетке должна быть доступна для элемента по элементам. |
IMultipleViewProvider | Зависит | Реализуйте шаблон элемента управления MultipleView, если элемент управления может поддерживать несколько представлений элементов в контейнере. |
IScrollProvider | Зависит | Реализуйте шаблон элемента управления прокрутки, если элементы в контейнере доступны для прокрутки. |
ISelectionProvider | Зависит | Если элемент управления поддерживает тип элемента управления List, поддерживающий выделение, элемент управления должен реализовать шаблон элемента управления выбора при сохранении состояния выделения между элементами, содержащимися в элементе управления. Если элементы в элементе управления недоступны для выбора, можно использовать тип элемента управления Group. |
CanSelectMultiple | Зависит | Элементы управления списком могут быть одним или несколькими контейнерами выбора. |
IsSelectionRequired | Зависит | Элементы управления списками не всегда требуют выбора элемента. |
ITableProvider | Никогда | Шаблон элемента управления таблицы никогда не поддерживается для типа элемента управления списка. Если элемент управления должен поддерживать этот шаблон, элемент управления должен быть основан на типе элемента управления DataGrid. |
Обязательные события
В следующей таблице перечислены события автоматизации пользовательского интерфейса, необходимые для поддержки элементов управления списком. Дополнительные сведения о событиях см. в обзоре событий автоматизации пользовательского интерфейса.
Событие автоматизации пользовательского интерфейса | Примечания |
---|---|
UIA_AutomationFocusChangedEventId | |
событие UIA_BoundingRectanglePropertyId изменено свойством. | |
событие UIA_IsEnabledPropertyId изменено свойством. | Если элемент управления поддерживает свойство IsEnabled, он должен поддерживать это событие. |
событие UIA_IsOffscreenPropertyId изменено свойством. | Если элемент управления поддерживает свойство IsOffscreen, он должен поддерживать это событие. |
UIA_LayoutInvalidatedEventId | Если макет дочерних элементов можно изменить, элемент управления должен поддерживать это событие. |
событие UIA_MultipleViewCurrentViewPropertyId изменено свойством. | Если элемент управления поддерживает шаблон элемента управления MultipleView, он должен поддерживать это событие. |
событие UIA_ScrollHorizontallyScrollablePropertyId изменено свойством. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
событие UIA_ScrollHorizontalScrollPercentPropertyId изменено свойством. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
UIA_ScrollHorizontalViewSizePropertyId событие, измененное свойством. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
событие UIA_ScrollVerticalScrollPercentPropertyId изменено свойством. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
событие UIA_ScrollVerticallyScrollablePropertyId изменено свойством. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
UIA_ScrollVerticalViewSizePropertyId событие изменения свойства. | Если элемент управления поддерживает шаблон элемента управления Scroll, он должен поддерживать это событие. |
UIA_Selection_InvalidatedEventId | Если элемент управления поддерживает шаблон элемента управления selection, он должен поддерживать это событие. |
UIA_StructureChangedEventId |