Поддержка автоматизации пользовательского интерфейса для типа элемента управления MenuItem
![]() |
---|
Эта документация предназначена для разработчиков на платформе .NET Framework, которым требуется использовать управляемые классы UI Automation, определенные в пространстве имен System.Windows.Automation.Последние сведения о UI Automation см. на веб-странице Windows Automation API: UI Automation. |
В этом разделе содержатся сведения о поддержке моделью Microsoft UI Automation элемента управления типа MenuItem. Здесь дается описание древовидной структуры Microsoft UI Automation элемента управления и предоставляются свойства и шаблоны элемента управления, которые необходимы для типа элемента управления MenuItem.
Элемент управления меню позволяет иерархически организовать элементы, связанные с командами и обработчиками событий. В стандартном приложении Microsoft Windows строка меню содержит несколько пунктов меню (таких, как Файл, Правка и Вид), и каждый пункт меню отображает меню. В меню содержится набор пунктов меню (таких, как Создать, Открыть и Закрыть), которые можно развернуть для отображения дополнительных пунктов меню или выполнения определенных действий при выборе элементов. Пункт меню может находиться в меню, строке меню или панели инструментов.
В следующих разделах задается требуемая древовидная структура UI Automation, свойства, шаблоны элементов управления и события для типа элемента управления MenuItem. Требования UI Automation применяются ко всем элементам управления "Список", будь то Windows Presentation Foundation (WPF), Win32 или Windows Forms.
В этом разделе содержатся следующие подразделы.
- Обязательная древовидная структура модели автоматизации пользовательского интерфейса
- Требуемые свойства модели автоматизации пользовательского интерфейса
- Требуемые шаблоны элементов управления модели автоматизации пользовательского интерфейса
- События модели автоматизации пользовательского интерфейса для пункта меню
- Требуемые события модели автоматизации пользовательского интерфейса
- Вопросы прежних версий
- Связанные разделы
Обязательная древовидная структура модели автоматизации пользовательского интерфейса
В следующей таблице дается представление элемента управления и представление содержимого дерева UI Automation, относящиеся к элементам управления MenuItem, а также дается описание того, что может содержаться в каждом представлении. Дополнительные сведения о дереве UI Automation см. в разделе Общие сведения о дереве модели автоматизации пользовательского интерфейса.
Представление элемента управления |
Представление содержимого |
---|---|
Пункт меню "Справка"
|
Пункт меню "Справка"
|
Вид элемента управления пункта меню имеет древовидную структуру UI Automation, показанную выше. Обратите внимание, что пункт меню Справка включается для обеспечения более наглядной иллюстрации структуры в типовой иерархии "меню–подменю".
Для представления содержимого, Menu отсутствует в дереве UI Automation, так как не представляет существенной информации конечному пользователю.
Требуемые свойства модели автоматизации пользовательского интерфейса
В следующей таблице перечислены свойства UI Automation, чьи значения или определения относятся к элементам управления "пункт меню". Дополнительные сведения о свойствах UI Automation см. в разделе Свойства автоматизации пользовательского интерфейса для клиентов.
Свойство |
Значение |
Описание |
---|---|---|
См. примечания. |
Значение этого свойства должно быть уникальным для каждого элемента управления в приложении. |
|
См. примечания. |
Внешний прямоугольник, содержащий весь элемент управления. |
|
См. примечания. |
Поддерживается при наличии ограничивающего прямоугольника. Если выполняется специализированная проверка нажатия и не все точки внутри ограничивающего прямоугольника можно выбрать с помощью мыши, то следует выполнить переопределение и указать точку, которую можно выбрать с помощью мыши. |
|
См. примечания. |
Если элемент управления может получать фокус клавиатуры, он должен поддерживать это свойство. |
|
См. примечания. |
Элемент управления "пункт меню" включается в представление содержимого дерева UI Automation и помечается именем. |
|
Null |
Метка отсутствует |
|
MenuItem |
Это значение одинаково для всех структур пользовательского интерфейса. |
|
"элемент меню" |
Локализованная строка, соответствующая типу элемента управления MenuItem. |
|
True |
Элемент управления "пункт меню" никогда не включается в представление содержимого дерева UI Automation. |
|
True |
Элемент управления "пункт меню" всегда должен включаться в представление элемента управления дерева UI Automation. |
Требуемые шаблоны элементов управления модели автоматизации пользовательского интерфейса
В следующей таблице перечислены шаблоны элемента управления UI Automation, которым требуется поддержка элементов управления "пункт меню". Дополнительные сведения о шаблонах элементов управления см. в разделе Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса.
Свойство шаблона элемента управления |
Поддержка |
Примечания |
---|---|---|
Зависит от конкретного случая |
Если элемент управления может быть развернут или свернут, реализуйте IExpandCollapseProvider. |
|
Зависит от конкретного случая |
Если элемент управления выполняет одиночное действие или команду, реализуйте IInvokeProvider. |
|
Зависит от конкретного случая |
Если элемент управления представляет параметр, который может быть включен или выключен, реализуйте IToggleProvider. |
|
Зависит от конкретного случая |
Если элемент управления используется для выбора из списка параметров между пунктами меню, реализуйте ISelectionItemProvider. |
События модели автоматизации пользовательского интерфейса для пункта меню
В следующей таблице перечислены события Microsoft UI Automation, связанные с элементом управления "пункт меню".
Событие |
Поддержка |
Объяснение |
---|---|---|
Зависит от конкретного случая |
Должно вызываться, если элемент управления поддерживает шаблон элемента управления Invoke. |
|
Событие, изменяемое свойством ToggleStateProperty. |
Зависит от конкретного случая |
Должно вызываться, если элемент управления поддерживает шаблон элемента управления Toggle. |
Событие, изменяемое свойством ExpandCollapseStateProperty. |
Зависит от конкретного случая |
Должно вызываться, если элемент управления поддерживает шаблон элемента управления Expand Collapse. |
Зависит от конкретного случая |
Отсутствует. |
Требуемые события модели автоматизации пользовательского интерфейса
В следующей таблице перечислены события UI Automation, которым требуется поддержка всех элементов управления "пункт меню". Дополнительные сведения о событиях см. в разделе Обзор событий автоматизации пользовательского интерфейса.
Событие UI Automation |
Поддержка/значение |
Примечания |
---|---|---|
Зависит от конкретного случая |
Нет |
|
Зависит от конкретного случая |
Нет |
|
Зависит от конкретного случая |
Нет |
|
Зависит от конкретного случая |
Нет |
|
Событие, изменяемое свойством BoundingRectangleProperty. |
Обязательно |
Нет |
Событие, изменяемое свойством IsOffscreenProperty. |
Требуется |
Нет |
Событие, изменяемое свойством IsEnabledProperty. |
Требуется |
Нет |
Событие, изменяемое свойством ExpandCollapseStateProperty. |
Зависит от конкретного случая |
Нет |
Событие, изменяемое свойством ToggleStateProperty. |
Зависит от конкретного случая |
Нет |
Обязательно |
Нет |
|
Обязательно |
Нет |
Вопросы прежних версий
Шаблон Toggle будет поддерживаться, только когда помечен пункт меню Win32, и может быть программно определено необходимое для поддержки шаблона Toggle. Поскольку пункт меню Win32 не представляет, имеет ли он возможность быть отмеченным, шаблон Invoke будет поддерживаться, когда пункт меню не отмечен. Исключение будет сделано, чтобы всегда поддерживать шаблон Invoke, даже для пунктов меню, которые должны поддерживать только шаблон Toggle. Благодаря этому клиенты не будут сбиты с толку тем, что, элемент, который поддерживал шаблон Invoke (когда пункт меню был не отмечен), больше не поддерживает шаблон после того, как стал отмеченным.
См. также
Ссылки
Основные понятия
Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса
Общие сведения о типах элементов управления автоматизации пользовательского интерфейса
Общие сведения о модели автоматизации пользовательского интерфейса