Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта документация предназначена для разработчиков .NET Framework, которые хотят использовать управляемые классы автоматизации пользовательского интерфейса, определенные в пространстве имен System.Windows.Automation. Последние сведения об автоматизации пользовательского интерфейса см. в разделе API автоматизации Windows: автоматизация пользовательского интерфейса.
В этом разделе даются рекомендации и устанавливаются соглашения для реализации IWindowProvider, а также предоставляется информация о свойствах, методах и событиях WindowPattern. Ссылки на дополнительные материалы перечислены в конце раздела.
Шаблон WindowPattern элемента управления используется для поддержки элементов управления, которые обеспечивают основные функциональные возможности на основе окон в традиционном графическом пользовательском интерфейсе (GUI). Примеры элементов управления, которые должны реализовать этот шаблон элемента управления, включают окна приложений верхнего уровня, дочерние окна с несколькими документами (MDI), изменяемые элементы управления разделенными панелями, модальные диалоги и окна справки по воздушным шарам.
Рекомендации по реализации и соглашения
При реализации шаблона элемента управления Window обратите внимание на следующие рекомендации и соглашения:
Для поддержки возможности изменения размера окна и положения экрана с помощью UI Automation элемент управления должен реализовывать ITransformProvider в дополнение к IWindowProvider.
Элементы управления, содержащие заголовки и элементы строки заголовка, позволяющие перемещать, масштабировать, максимизировать, свертывать или закрывать, обычно требуются для реализации IWindowProvider.
Такие элементы управления, как всплывающие подсказки и поле со списком или раскрывающийся список в меню, обычно не реализуют IWindowProvider.
Всплывающие окна с подсказками отличаются от базовых всплывающих подсказок благодаря наличию кнопки закрытия, похожей на окно.
Полноэкранный режим не поддерживается IWindowProvider, так как он предназначен для приложения и не является типичным поведением окна.
Обязательные члены для IWindowProvider
Для интерфейса IWindowProvider требуются следующие свойства, методы и события.
Обязательный член | Тип участника | Примечания. |
---|---|---|
InteractionState | Недвижимость | Отсутствует |
IsModal | Недвижимость | Отсутствует |
IsTopmost | Недвижимость | Отсутствует |
Maximizable | Недвижимость | Отсутствует |
Minimizable | Недвижимость | Отсутствует |
VisualState | Недвижимость | Отсутствует |
Close | Метод | Отсутствует |
SetVisualState | Метод | Отсутствует |
WaitForInputIdle | Метод | Отсутствует |
WindowClosedEvent | Событие | Отсутствует |
WindowOpenedEvent | Событие | Отсутствует |
WindowInteractionState | Событие | Не гарантируется, что это ReadyForUserInteraction |
Исключения
Поставщики должны генерировать следующие исключения.
Тип исключения | Состояние |
---|---|
InvalidOperationException | SetVisualState — Если элемент управления не поддерживает запрошенное поведение. |
ArgumentOutOfRangeException | WaitForInputIdle — Если параметр не является допустимым числом. |
См. также
- Обзор шаблонов управления автоматизацией пользовательского интерфейса
- Поддержка шаблонов управления в поставщике автоматизации пользовательского интерфейса
- Шаблоны элементов управления автоматизации пользовательского интерфейса для клиентов
- Обзор дерева автоматизации пользовательского интерфейса
- Использование кэширования в автоматизации пользовательского интерфейса