Шаблон элемента управления ExpandCollapse
Описывает рекомендации и соглашения для реализации IExpandCollapseProvider, включая сведения о свойствах, методах и событиях. Шаблон элемента управления ExpandCollapse используется для поддержки элементов управления, которые визуально расширяются, чтобы отобразить больше содержимого и свернуть, чтобы скрыть содержимое.
Примеры элементов управления, реализующих этот шаблон элемента управления, см. в типах элементов управления и их поддерживаемых шаблонах элементов управления.
В этом разделе содержатся следующие разделы.
- руководящих принципов и соглашений о реализации
- обязательные элементы для IExpandCollapseProvider
- связанные разделы
Рекомендации по реализации и соглашения
При реализации шаблона элемента управления ExpandCollapse обратите внимание на следующие рекомендации и соглашения:
Агрегатные элементы управления, созданные с помощью дочерних объектов, которые предоставляют пользовательский интерфейс с функциональными возможностями расширения и свершения, должны поддерживать шаблон элемента управления ExpandCollapse, а дочерние элементы не поддерживаются. Например, элемент управления со списком создается с сочетанием списка, кнопки и редактирования элементов управления, но это только родительское поле со списком, которое должно поддерживать шаблон элемента управления ExpandCollapse.
Заметка
Исключением является элемент управления меню, который является агрегатом отдельных объектов элементов меню. Объекты элементов меню могут поддерживать шаблон элемента управления ExpandCollapse, но родительский элемент управления меню не может. Аналогичное исключение применяется к элементам управления дерева и дерева.
Если IExpandCollapseProvider::ExpandCollapseState элемента управления установлено значение ExpandCollapseState_LeafNode, все функции ExpandCollapse в настоящее время неактивны для элемента управления, а единственная информация, которую можно получить с помощью этого шаблона управления, — это ExpandCollapseState. При последующем добавлении дочерних объектов ExpandCollapseState изменения и функция ExpandCollapse активируется.
ExpandCollapseState относится только к видимости непосредственных дочерних объектов; Он не ссылается на видимость всех потомков объектов.
функции IExpandCollapseProvider::Expand и Свертывание зависят от элемента управления. Ниже приведены примеры этого поведения.
- Личное меню Office может быть элементом меню с тремя состояниями ("Развернутый", "Свернутый" и "ЧастичноExpanded"), где элемент управления указывает состояние, которое необходимо принять при вызове развернуть или Свернуть.
- Вызов развернуть на элементе дерева может отображать всех потомков или только непосредственных дочерних элементов.
- Если вызов развернуть или Свернуть на элементе управления сохраняет состояние его потомков, событие изменения видимости должно быть отправлено, а не событие изменения состояния. Если родительский элемент управления не поддерживает состояние его потомков при сворачивании, элемент управления может уничтожить всех потомков, которые больше не видны и вызвать уничтоженное событие; или может изменить ExpandCollapseState для каждого потомка и вызвать событие изменения видимости.
Чтобы гарантировать навигацию, желательно, чтобы объект был в дереве автоматизации пользовательского интерфейса Майкрософт (с соответствующим состоянием видимости) независимо от его родителей ExpandCollapseState. Если потомки создаются по запросу, они могут отображаться только в дереве автоматизации пользовательского интерфейса после первого отображения или только во время их отображения.
Обязательные элементы для IExpandCollapseProvider
Для реализации интерфейса IExpandCollapseProvid er требуются следующие свойства, методы и события.
Обязательные элементы | Тип элемента | Примечания |
---|---|---|
ExpandCollapseState | Свойство | Никакой |
развернуть | Метод | Никакой |
свернуть | Метод | Никакой |
IUIAutomationPropertyChangedEventHandler | Событие | Этот элемент управления не имеет связанных событий; используйте этот универсальный обработчик событий. |
Связанные разделы
-
Типы элементов управления и поддерживаемые шаблоны элементов управления
-
Обзор шаблонов элементов управления автоматизации пользовательского интерфейса