Тип элемента управления ListItem

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

Элементы управления списком — это пример элементов управления, реализующих тип элемента управления ListItem .

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

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

Типичная древовидная структура

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

Представление элемента управления Представление содержимого
  • ListItem
    • Image (0 или более)
    • Text (0 или более)
    • Edit (0 или более)
  • ListItem

 

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

Соответствующие свойства

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

Свойство модели автоматизации пользовательского интерфейса Значение Примечания
UIA_AutomationIdPropertyId См. примечания. Значение этого свойства должно быть уникальным среди всех одноранговых элементов в необработанном представлении дерева модель автоматизации пользовательского интерфейса. Выделите свойство AutomationId для элемента списка, если известно, что элемент согласован в разных экземплярах пользовательского интерфейса. Если элемент списка заполняется динамически и непредсказуем, оставьте свойство AutomationId пустым.
UIA_BoundingRectanglePropertyId См. примечания. Это значение данного свойства должно включать область изображения и текста элемента списка.
UIA_ClickablePointPropertyId Зависит Если элемент управления списком имеет доступную для щелчка точку (точку, которую можно щелкнуть, чтобы привести список к фокусу), эта точка должна быть предоставлена через это свойство. Если элемент управления списком полностью охватывается элементами списка-потомков, он вернет ошибку UIA_E_NOCLICKABLEPOINT , указывающую на то, что клиент должен запросить элемент в элементе управления списком для щелчка.
UIA_ControlTypePropertyId ListItem Это значение одинаково для всех инфраструктур пользовательского интерфейса.
UIA_HelpTextPropertyId См. примечания. Текст справки для элементов управления "Список" должен объяснять, почему пользователю предлагается сделать выбор из списка вариантов; обычно в этой справке содержатся сведения того же типа, что и в подсказке. Например, "Выберите элемент, чтобы задать разрешение экрана для монитора".
UIA_IsContentElementPropertyId TRUE Элемент управления "Список" всегда включается в представление содержимого дерева модель автоматизации пользовательского интерфейса.
UIA_IsControlElementPropertyId TRUE Элемент управления "Список" всегда включается в представление элемента управления дерева модель автоматизации пользовательского интерфейса.
UIA_IsKeyboardFocusablePropertyId См. примечания. Если контейнер может принимать ввод с помощью клавиатуры, это свойство должно иметь значение TRUE.
UIA_IsOffscreenPropertyId Зависит Это свойство должно возвращать значение, указывающее, прокручивается ли элемент списка в данный момент в представлении родительского контейнера, реализующего шаблон элемента управления Scroll .
UIA_ItemStatusPropertyId Зависит Если элемент управления содержит состояние, которое обновляется динамически, это свойство должно поддерживаться, чтобы специальные возможности могли получать обновления при изменении состояния элемента.
UIA_ItemTypePropertyId Зависит Это свойство должно предоставляться для элементов управления "Список", которые представляют базовый объект. Такие элементы управления "Список" обычно имеют значок, связанный с элементом управления, который пользователи связывают с базовым объектом.
UIA_LabeledByPropertyId См. примечания. Если имеется статическая текстовая метка, то данное свойство должно предоставлять ссылку на этот элемент управления.
UIA_LocalizedControlTypePropertyId См. примечания. Локализованная строка, соответствующая типу элемента управления ListItem . Значение по умолчанию — "элемент списка" для en-US или english (США).
UIA_NamePropertyId См. примечания. Значение свойства name элемента управления списком поступает из текстовой метки элемента.

 

Обязательные шаблоны элементов управления

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

Шаблон элемента управления Поддержка Примечания
IExpandCollapseProvider Зависит Если элементом можно управлять для отображения или скрытия информации, необходимо реализовать шаблон элемента управления ExpandCollapse .
IGridItemProvider Зависит Если в контейнере списка поддерживается пространственная навигация между элементами, а контейнер упорядочен по строкам и столбцам, необходимо реализовать шаблон элемента управления GridItem .
IInvokeProvider Зависит Если элемент имеет команду, которую можно выполнить отдельно от выбора, необходимо реализовать шаблон элемента управления Вызов . Обычно это действие, связанное с двойным щелчком элемента управления "Список". Примерами может быть запуск документа из Windows Обозреватель или воспроизведение музыкального файла в Microsoft Медиаплеер Windows.
IScrollItemProvider Зависит Если элемент списка содержится в прокручиваемом контейнере, необходимо реализовать шаблон элемента управления ScrollItem .
ISelectionItemProvider Зависит Элемент управления списка, поддерживающий выбор, должен реализовывать шаблон элемента управления SelectionItem . Это позволяет элементам управления передавать информацию при их выборе.
IToggleProvider Зависит Если элемент списка можно проверить, а действие не выполняет изменение состояния выбора, необходимо реализовать шаблон элемента управления Toggle .
IValueProvider Зависит Если элемент можно изменить, необходимо реализовать шаблон элемента управления Значение . Изменения в элементе управления списком приведут к изменению значений свойств UIA_NamePropertyId и UIA_ValueValuePropertyId .

 

Обязательные события

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

Событие модель автоматизации пользовательского интерфейса Примечания
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId событие изменения свойства.
UIA_ExpandCollapseExpandCollapseStatePropertyId событие изменения свойства. Если элемент управления поддерживает шаблон элемента управления ExpandCollapse , он должен поддерживать это событие.
UIA_Invoke_InvokedEventId Если элемент управления поддерживает шаблон элемента управления Invoke , он должен поддерживать это событие.
UIA_IsEnabledPropertyId событие изменения свойства. Если элемент управления поддерживает свойство IsEnabled , он должен поддерживать это событие.
UIA_IsOffscreenPropertyId событие изменения свойства. Если элемент управления поддерживает свойство IsOffscreen , он должен поддерживать это событие.
UIA_ItemStatusPropertyId событие изменения свойства. Если элемент управления поддерживает свойство ItemStatus , параметр должен поддерживать это событие.
UIA_NamePropertyId событие изменения свойства.
UIA_SelectionItem_ElementAddedToSelectionEventId Если элемент управления поддерживает шаблон элемента управления SelectionItem , он должен поддерживать это событие.
UIA_SelectionItem_ElementRemovedFromSelectionEventId Если элемент управления поддерживает шаблон элемента управления SelectionItem , он должен поддерживать это событие.
UIA_SelectionItem_ElementSelectedEventId Если элемент управления поддерживает шаблон элемента управления SelectionItem , он должен поддерживать это событие.
UIA_StructureChangedEventId
UIA_ToggleToggleStatePropertyId событие изменения свойства. Если элемент управления поддерживает шаблон элемента управления Toggle , он должен поддерживать это событие.
UIA_ValueValuePropertyId событие изменения свойства. Если элемент управления поддерживает шаблон элемента управления "Значение" , он должен поддерживать это событие.

 

Комментарии

Если контейнер содержит элементы списка, основные средства навигации должны перейти к элементам списка. Размещение фокуса на вложенных элементов с помощью навигации по спискам может запутать пользователей и средства специальных возможностей. Если контейнер содержит вертикальный список элементов, нажатие клавиш СТРЕЛКА ВВЕРХ и СТРЕЛКА ВНИЗ должно перемещаться по элементам, но нажатие клавиш СТРЕЛКА ВПРАВО и СТРЕЛКА ВЛЕВО может переходить к вложенным элементам элемента, например столбцам списка или вложенным элементам пользовательского интерфейса.

Основные понятия

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

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