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


Шаблоны и интерфейсы элементов управления

Перечисляет шаблоны элементов управления Microsoft UI Automation, классы, используемые клиентами для доступа к ним, и поставщики интерфейсов, используемые для их реализации.

В таблице в этом разделе описываются шаблоны элементов управления автоматизации пользовательского интерфейса Майкрософт. В таблице также перечислены классы, используемые клиентами автоматизации пользовательского интерфейса для доступа к шаблонам элементов управления и интерфейсам, используемым поставщиками автоматизации пользовательского интерфейса для их реализации. В столбце шаблона элемента управления отображается имя шаблона с точки зрения клиента автоматизации пользовательского интерфейса в виде константного значения, указанного в идентификаторах свойств доступности шаблона элемента управления. С точки зрения поставщика автоматизации пользовательского интерфейса каждая из этих шаблонов — это имя константы PatternInterface . В столбце интерфейса поставщика классов отображается имя интерфейса, реализуемого поставщиками для предоставления этого шаблона для пользовательского элемента управления XAML.

Замечание

Для приложений WinUI, созданных с помощью пакета SDK для приложений Windows, используйте интерфейсы в Microsoft.UI.Xaml.Automation.Provider. Если вы поддерживаете устаревшую базу кода UWP, эквивалентные интерфейсы существуют в Windows.UI.Xaml.Automation.Provider.

Дополнительные сведения о реализации пользовательских одноранговых узлов автоматизации, которые предоставляют шаблоны элементов управления и реализуют интерфейсы, см. в разделе "Пользовательские одноранговые узлы автоматизации".

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

Шаблон управления Интерфейс поставщика WinUI Устаревший эквивалент UWP Описание
Annotation IAnnotationProvider IAnnotationProvider Используется для отображения свойств аннотации в документе.
Док IDockProvider IDockProvider Используется для элементов управления, которые можно закрепить в контейнере для докинга. Например, панели инструментов или палитры инструментов.
Перетащить IDragProvider IDragProvider Используется для поддержки перетаскиваемых элементов управления или элементов управления с перетаскиваемыми элементами.
DropTarget IDropTargetProvider IDropTargetProvider Используется для поддержки элементов управления, которые могут быть целью операции перетаскивания.
ExpandCollapse IExpandCollapseProvider IExpandCollapseProvider Используется для поддержки элементов управления, которые визуально расширяются, чтобы отобразить больше содержимого и свертываются, чтобы его скрыть.
Сетка IGridProvider IGridProvider Используется для элементов управления, поддерживающих функции сетки, такие как изменение размера и перемещение в указанную ячейку. Обратите внимание, что сама сетка не реализует этот шаблон, так как он предоставляет макет, но не является элементом управления.
GridItem IGridItemProvider IGridItemProvider Используется для элементов управления, имеющих ячейки в сетках.
Вызвать IInvokeProvider IInvokeProvider Используется для элементов управления, которые можно вызвать, например кнопку.
ItemContainer IItemContainerProvider IItemContainerProvider Позволяет приложениям находить элемент в контейнере, например виртуализированный список.
MultipleView IMultipleViewProvider IMultipleViewProvider Используется для элементов управления, которые могут переключаться между несколькими представлениями одного набора сведений, данных или дочерних элементов.
ObjectModel IObjectModelProvider IObjectModelProvider Используется для предоставления указателя на базовую объектную модель документа.
RangeValue IRangeValueProvider IRangeValueProvider Используется для элементов управления с диапазоном значений, которые можно применить к элементу управления. Например, элемент управления спиннером, содержащий годы, может иметь диапазон от 1900 до текущего года, в то время как другой элемент управления спиннер, представляющего месяцы, будет иметь диапазон от 1 до 12.
Scroll IScrollProvider IScrollProvider Используется для элементов управления, которые могут прокручиваться. Например, элемент управления, имеющий полосы прокрутки, которые активны, когда информации больше, чем можно отобразить в области просмотра элемента управления.
ScrollItem IScrollItemProvider IScrollItemProvider Используется для элементов управления с отдельными элементами в списке, который прокручивается. Например, элемент управления списком, включающий отдельные пункты в списке прокрутки, как, например, элемент управления комбинированным списком.
Выбор ISelectionProvider ISelectionProvider Используется для элементов управления контейнерами выбора. Например, ListBox и ComboBox.
SelectionItem ISelectionItemProvider ISelectionItemProvider Используется для отдельных элементов в элементах управления контейнера выбора, таких как поля списков и комбинированные списки.
Электронная таблица ISpreadsheetProvider ISpreadsheetProvider Используется для предоставления содержимого электронной таблицы или другого документа на основе сетки.
Элемент электронной таблицы ISpreadsheetItemProvider ISpreadsheetItemProvider Используется для предоставления свойств ячейки в электронной таблице или другом документе на основе сетки.
Стили IStylesProvider IStylesProvider Используется для описания элемента пользовательского интерфейса с определенным стилем, цветом заливки, шаблоном заливки или фигурой.
SynchronizedInput ISynchronizedInputProvider ISynchronizedInputProvider Позволяет клиентским приложениям автоматизации пользовательского интерфейса направлять ввод мыши или клавиатуры в определенный элемент пользовательского интерфейса.
таблица ITableProvider ITableProvider Используется для элементов управления, имеющих сетку и заголовки. Например, табличный элемент управления календаря.
TableItem ITableItemProvider ITableItemProvider Используется для элементов в таблице.
Текст ITextProvider ITextProvider Используется для редактирования элементов управления и документов, предоставляющих текстовую информацию. См. также ITextRangeProvider и ITextProvider2.
TextChild ITextChildProvider ITextChildProvider Используется для доступа к ближайшему предку элемента, который поддерживает шаблон элемента управления Text .
Textedit Управляемый класс недоступен Управляемый класс недоступен Предоставляет доступ к элементу управления, который изменяет текст, например элемент управления, который выполняет автоматическое исправление или включает входную композицию с помощью редактора методов ввода (IME).
TextRange ITextRangeProvider ITextRangeProvider Предоставляет доступ к диапазону непрерывного текста в текстовом контейнере, который реализует ITextProvider. См. также ITextRangeProvider2.
Переключатель IToggleProvider IToggleProvider Используется для элементов управления, в которых можно переключать состояние. Например, CheckBox и пункты меню, которые можно отмечать.
Transform ITransformProvider ITransformProvider Используется для элементов управления, которые можно изменять размер, перемещать и поворачивать. Типичное использование шаблона управления "Преобразование" в конструкторах, формах, графических редакторах и программах для рисования.
Ценность IValueProvider IValueProvider Позволяет клиентам получать или задавать значение для элементов управления, которые не поддерживают диапазон значений.
VirtualizedItem IVirtualizedItemProvider IVirtualizedItemProvider Предоставляет элементы внутри контейнеров, которые виртуализированы и должны быть полностью доступны в качестве элементов автоматизации пользовательского интерфейса.
Окно IWindowProvider IWindowProvider Предоставляет сведения, относящиеся к окнам, основную концепцию операционной системы Microsoft Windows. Примеры окон, служащих элементами управления, включают дочерние окна и диалоговые окна.

Замечание

Не все эти шаблоны реализуются существующими элементами управления XAML. Некоторые интерфейсы шаблонов существуют только для обеспечения четности с определениями шаблонов общей платформы автоматизации пользовательского интерфейса и поддержки одноранговых сценариев автоматизации, требующих полной пользовательской реализации.