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


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

Примечание.

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

В этом разделе приводятся рекомендации и соглашения для реализации ISelectionItemProvider, включая сведения о свойствах, методах и событиях. Ссылки на дополнительные материалы перечислены в конце раздела.

Шаблон элемента управления SelectionItemPattern используется для поддержки элементов управления, которые действуют как отдельные выбираемые дочерние элементы контейнерных элементов управления, реализующих ISelectionProvider. Примеры элементов управления, реализующих шаблон элемента управления SelectionItem, см. в разделе "Сопоставление шаблонов элементов управления" для клиентов модель автоматизации пользовательского интерфейса

Правила и соглашения реализации

При реализации шаблона элемента управления SelectionItem обратите внимание на следующие правила и соглашения.

  • Элементы управления, поддерживающие единичный выбор, которые управляют дочерними элементами, реализующими IRawElementProviderFragmentRoot, такие как ползунок Разрешение экрана в диалоговом окне Свойства экрана , должны реализовывать ISelectionProvider , а их дочерние элементы должны реализовывать IRawElementProviderFragment и ISelectionItemProvider.

Обязательные члены для ISelectionItemProvider

Следующие свойства, методы и события обязательны для реализации ISelectionItemProvider.

Обязательные члены Тип члена Примечания.
CanSelectMultiple Свойство нет
IsSelectionRequired Свойство нет
GetSelection Способ нет
InvalidatedEvent Событие Вызывается, когда выбор в контейнере существенно изменился и требуется отправить больше событий ElementSelectedEvent и ElementRemovedFromSelectionEvent , чем позволяет константа InvalidateLimit .

Исключения

Поставщики должны вызывать следующие исключения.

Тип исключения Condition
InvalidOperationException Когда предпринимается попытка выполнить одно из следующих действий:

- RemoveFromSelection в контейнере с поддержкой единственного выбора, где IsSelectionRequiredProperty = true , и элемент уже выбран;
- RemoveFromSelection в контейнере с поддержкой множественного выбора, где IsSelectionRequiredProperty = true , и выбран только один элемент;
- AddToSelection в контейнере с поддержкой единственного выбора, где CanSelectMultipleProperty = false , и другой элемент уже выбран.

См. также