Реализация шаблона элемента управления модели автоматизации пользовательского интерфейса "Выделение"
Примечание |
---|
Эта документация предназначена для разработчиков на платформе .NET Framework, которым требуется использовать управляемые классы UI Automation, определенные в пространстве имен System.Windows.Automation.Последние сведения о UI Automation см. на веб-странице Windows Automation API: UI Automation. |
В этом разделе рассматриваются правила и соглашения по реализации ISelectionProvider, включая сведения о событиях и свойствах. Ссылки на дополнительные материалы перечислены в конце раздела.
Шаблон элемента управления SelectionPattern используется для поддержки элементов управления, которые действуют как контейнеры для коллекции выбираемых дочерних элементов. Потомки данного элемента должен реализовывать ISelectionItemProvider. Примеры элементов управления, реализующие данный шаблон элемента управления, см. в разделе Сопоставление шаблона элемента управления для клиентов автоматизации пользовательского интерфейса.
В этом разделе содержатся следующие подразделы.
- Правила и соглашения по реализации
- Обязательные члены для ISelectionProvider
- Исключения
- Связанные разделы
Правила и соглашения по реализации
При реализации шаблона элемента управления "Выделение" обратите внимание на следующие правила и соглашения:
Элементы управления, которые реализуют ISelectionProvider, позволяют одному или нескольким дочерним элементам быть выделенными. Например, списки, представления списков и представления деревьев поддерживают множественное выделение, а поля со списком, ползунки и группы переключателей поддерживают единичное выделение.
Элементы управления, имеющие минимальный, максимальный и непрерывный диапазон, такие как элемент управления ползунка Громкость, должны реализовывать IRangeValueProvider вместо ISelectionProvider.
Элементы управления с единичным выделением, которые управляют дочерними элементами, реализующими IRawElementProviderFragmentRoot, такие как ползунок Разрешение экрана в диалоговом окне Свойства экрана или элемент управления выбора Палитры цветов из Microsoft Word (см. ниже), должны реализовывать ISelectionProvider, а их дочерние элементы должны реализовывать IRawElementProviderFragment и ISelectionItemProvider.
Пример сопоставления строки образца цвета
- Меню не поддерживают SelectionPattern. Если используются элементы меню, содержащие рисунки и текст (например, элементы области Предварительный просмотр в меню Вид в Microsoft Outlook), и необходимо передать состояние, следует реализовать IToggleProvider.
Обязательные члены для ISelectionProvider
Следующие свойства, методы и события необходимы для интерфейса ISelectionProvider.
Обязательные члены |
Тип |
Примечания |
---|---|---|
Свойство |
Должен поддерживать события изменения свойства с помощью AddAutomationPropertyChangedEventHandler и RemoveAutomationPropertyChangedEventHandler. |
|
Свойство |
Должен поддерживать события изменения свойства с помощью AddAutomationPropertyChangedEventHandler и RemoveAutomationPropertyChangedEventHandler. |
|
Метод |
Нет |
|
Событие |
Возникает, когда выделение в контейнере существенно изменилось, и требуется отправить больше событий добавления и удаления, чем позволяет константа InvalidateLimit. |
Свойства IsSelectionRequired и CanSelectMultiple могут быть динамическими. Например, начальное состояние элемента управления может не иметь по умолчанию выделенных элементов, что показывает, что IsSelectionRequired равен false. Однако после того, как будет выделен один из элементов, элемент управления всегда должен иметь хотя бы один выделенный элемент. Аналогично, в редких случаях, элемент управления может позволить при инициализации несколько выделенных элементов, но впоследствии разрешить выделение только одного элемента.
Исключения
Поставщики должны вызывать следующие исключения.
Тип исключения |
Атрибут Condition |
---|---|
Если элемент управления не включен. |
|
Если элемент управления скрыт. |
См. также
Задачи
Использование кэширования в модели автоматизации пользовательского интерфейса
Основные понятия
Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса
Шаблоны элементов управления модели автоматизации пользовательского интерфейса для клиентов
Реализация шаблона элемента управления SelectionItem автоматизации пользовательского интерфейса
Общие сведения о дереве модели автоматизации пользовательского интерфейса