Поддержка автоматизации пользовательского интерфейса для элемента управления типа DataItem
Примечание |
---|
Эта документация предназначена для разработчиков на платформе .NET Framework, которым требуется использовать управляемые классы UI Automation, определенные в пространстве имен System.Windows.Automation.Последние сведения о UI Automation см. на веб-странице Windows Automation API: UI Automation. |
В этом разделе содержатся сведения о поддержке Microsoft UI Automation поддержке для типа элемента управления DataItem. В UI Automation тип элемента управления представляет собой набор условий, которым должен удовлетворять элемент управления, чтобы использовать свойство ControlTypeProperty. К этим условиям относятся конкретные правила для древовидной структуры UI Automation, значений свойств UI Automation и шаблонов элементов управления.
Запись в списке контактов является примером элемента управления DataItem. Элемент управления DataItem содержит сведения, представляющие интерес для конечного пользователя. Это нечто более сложное, чем просто элемент списка, поскольку он содержит более обширные сведения.
В следующих разделах определяется необходимая древовидная структура UI Automation, свойства, шаблоны и события для типа элемента управления DataItem. Требования UI Automation применяются ко всем элементам управления DataItem: Windows Presentation Foundation (WPF), Win32 или Windows Forms.
В этом разделе содержатся следующие подразделы.
- Обязательная древовидная структура модели автоматизации пользовательского интерфейса
- Обязательные свойства модели автоматизации пользовательского интерфейса
- Требуемые шаблоны элементов управления модели автоматизации пользовательского интерфейса
- Работа с элементами данных в больших списках
- Обязательные события модели автоматизации пользовательского интерфейса
- Пример элемента управления DataItem
- Связанные разделы
Обязательная древовидная структура модели автоматизации пользовательского интерфейса
В следующей таблице описывается представление элемента управления и представление содержимого для дерева UI Automation, которые соответствуют элементам управления типа DataItem, а также возможное содержимое в каждом представлении. Дополнительные сведения о дереве UI Automation см. в разделе Общие сведения о дереве модели автоматизации пользовательского интерфейса.
Дерево UI Automation — представление элемента управления |
Дерево UI Automation — представление содержимого |
---|---|
DataItem
|
DataItem
|
Элемент типа "Элемент данных" в сетке данных может содержать множество объектов, включая элементы данных другого уровня или особые элементы сетки, например текст, изображения или элементы управления "Поле ввода". Если элемент "Элемент данных" выполняет роль особого объекта, он должен представляться как элемент управления особого типа, например типа ListItem для выбираемого элемента данных в сетке.
Обязательные свойства модели автоматизации пользовательского интерфейса
В следующей таблице перечислены свойства, значение или определение которых относится к элементам управления DataItem. Дополнительные сведения о свойствах UI Automation см. в разделе Свойства автоматизации пользовательского интерфейса для клиентов.
Свойство |
Значение |
Примечания |
---|---|---|
См. примечания. |
Значение этого свойства должно быть уникальным для каждого элемента управления в приложении. |
|
См. примечания. |
Внешний прямоугольник, содержащий весь элемент управления. |
|
См. примечания. |
Поддерживается при наличии ограничивающего прямоугольника. Если выполняется специализированная проверка попадания и не все точки внутри ограничивающего прямоугольника можно выбрать с помощью мыши, следует выполнить переопределение и указать точку, которую можно выбрать с помощью мыши. |
|
DataItem |
Это значение одинаково для всех структур пользовательского интерфейса. |
|
True |
Элемент управления DataItem всегда должен являться содержимым. |
|
True |
Элемент управления DataItem всегда должен являться элементом управления. |
|
См. примечания. |
Если элемент управления может получать фокус ввода с клавиатуры, он должен поддерживать это свойство. |
|
См. примечания. |
Если элемент управления содержит динамически обновляемое состояние, то это свойство должно поддерживаться, чтобы вспомогательные технологии могли получать обновления при изменении состояния элемента. |
|
См. примечания. |
Это строковое значение, передающее конечному пользователю базовый объект, который представляет элемент. Примерами являются "файл мультимедия" или "Контакт". |
|
Null |
Элемент управления DataItem не имеет статической текстовой подписи. |
|
"элемент данных" |
Локализованная строка, соответствующая типу элемента управления DataItem. |
|
См. примечания. |
Элемент управления DataItem всегда содержит основной текстовый элемент, который относится к тому, что пользователь будет считать семантическим идентификатором для элемента. |
Требуемые шаблоны элементов управления модели автоматизации пользовательского интерфейса
В следующей таблице перечислены требуемые шаблоны элементов управления Microsoft UI Automation, которые должны поддерживаться всеми элементами управления типа DataItem. Дополнительные сведения о шаблонах элементов управления см. в разделе Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса.
Шаблон элемента управления |
Поддержка |
Примечания |
---|---|---|
Зависит от конкретного случая |
Если элемент управления типа DataItem может быть развернут или свернут для отображения или скрытия информации, то должен поддерживаться шаблон развертывания / свертывания. |
|
Зависит от конкретного случая |
Элементы управления DataItem будут поддерживать шаблон GridItem, когда коллекция элементов данных доступна в контейнере, в котором можно перемещаться от элемента к элементу. |
|
Зависит от конкретного случая |
Все элементы управления DataItem поддерживают возможность прокручивания в представлении с шаблоном прокрутки элемента, если их контейнер данных содержит больше элементов, чем может поместиться на экране. |
|
Да |
Все элементы управления DataItem должны поддерживать шаблон выбора элемента, чтобы определить, выбран ли элемент. |
|
Зависит от конкретного случая |
Если элемент данных включен в тип элемента управления Data Grid, то он будет поддерживать этот шаблон. |
|
Зависит от конкретного случая |
Если элемент управления DataItem содержит состояние, которое может циклически изменяться. |
|
Зависит от конкретного случая |
Если основной текст элемента данных является редактируемым, то должен поддерживаться шаблон значения. |
Работа с элементами данных в больших списках
Большие списки часто являются данными, отображаемыми в UI для улучшения производительности. В связи с этим клиент автоматизации пользовательского интерфейса не может использовать функцию запроса UI Automation для получения содержимого всего дерева таким же образом, как в других контейнерах элементов. До получения доступа к полному набору сведений из элемента данных клиент должен прокрутить элемент в представление (или развернуть элемент управления, чтобы отобразить все важные параметры).
Когда вызывается SetFocus на элементе UI Automation для элемента данных, Microsoft Windows Explorer возвращается успешно и будет принудительно установлен фокус на поле редактирования в поддереве элемента данных.
Обязательные события модели автоматизации пользовательского интерфейса
В следующей таблице перечислены события UI Automation, которые должны поддерживаться всеми элементами управления типа DataItem. Дополнительные сведения о событиях см. в разделе Обзор событий автоматизации пользовательского интерфейса.
Событие UI Automation |
Поддержка |
Примечания |
---|---|---|
Обязательно |
Нет |
|
Событие, изменяемое свойством BoundingRectangleProperty. |
Обязательно |
Нет |
Событие, изменяемое свойством IsEnabledProperty. |
Требуется |
Нет |
Событие, изменяемое свойством IsOffscreenProperty. |
Требуется |
Нет |
Событие, изменяемое свойством NameProperty. |
Обязательно |
Нет |
Обязательно |
Нет |
|
Зависит от конкретного случая |
Нет |
|
Событие, изменяемое свойством ExpandCollapseStateProperty. |
Зависит от конкретного случая |
Нет |
Обязательно |
Нет |
|
Обязательно |
Нет |
|
Обязательно |
Нет |
|
Событие, изменяемое свойством ToggleStateProperty. |
Зависит от конкретного случая |
Нет |
Событие, изменяемое свойством ValueProperty. |
Зависит от конкретного случая |
Нет |
Пример элемента управления DataItem
На следующем рисунке показан элемент управления типа DataItem в элементе управления List View с поддержкой подробных сведений для столбцов.
Представление элемента управления и Представление содержимого для дереваUI Automation, которое относятся к элементу управления типа DataItem, отображены ниже. Шаблоны элементов управления каждого элемента автоматизации показаны в скобках. Группа Contoso также является частью сетки элемента управления ведущего приложения сетки данных.
Дерево UI Automation — представление элемента управления |
Дерево UI Automation — представление содержимого |
---|---|
|
|
Если сетка представляет список выбираемых элементов, соответствующие элементы пользовательского интерфейса могут быть представлены элементом управления типа ListItem, а не DataItem. В предыдущем примере элементы DataItem ("Accounts Receivable.doc" и "Accounts Payable.doc") в элементе Group ("Contoso") можно улучшить, представив их как элементы управления типа ListItem, поскольку этот тип уже поддерживает шаблон элемента управления SelectionItem.
См. также
Ссылки
Основные понятия
Общие сведения о типах элементов управления автоматизации пользовательского интерфейса
Общие сведения о модели автоматизации пользовательского интерфейса