Share via


Compatibilidad de UI Automation para el tipo de control MenuBar

Nota

Esta documentación está dirigida a los desarrolladores de .NET Framework que quieran usar las clases de automatización de la interfaz de usuario administradas definidas en el espacio de nombres System.Windows.Automation. Para ver la información más reciente acerca de la automatización de la interfaz de usuario, consulte Windows Automation API: automatización de la interfaz de usuario.

En este tema se ofrece información sobre la compatibilidad de UI Automation con el tipo de control MenuBar. En Automatización de la interfaz de usuario, un tipo de control es un conjunto de condiciones que un control debe cumplir para poder usar la propiedad ControlTypeProperty. Las condiciones incluyen directrices específicas para la estructura de árbol de UI Automation , los valores de propiedad de esta y los patrones de control.

Los controles de contenedor de barra de menús son un ejemplo de controles que implementan el tipo de control MenuBar. Las barras de menús proporcionan un medio para que los usuarios activen los comandos y las opciones contenidos en una aplicación.

En las secciones siguientes se definen la estructura de árbol, las propiedades, los patrones de control y los eventos para el tipo de control MenuBar de UI Automation necesarios. Los requisitos de Automatización de la interfaz de usuario se aplican a todos los controles de lista, ya sea Windows Presentation Foundation (WPF), Win32 o Windows Forms.

Estructura de árbol de Automatización de la interfaz de usuario necesaria

En la tabla siguiente se describe la vista de control y la vista de contenido del árbol de automatización de la interfaz de usuario que pertenece a los controles de barra de menú y se describe lo que puede incluirse en cada vista. Para más información sobre el árbol de automatización de la interfaz de usuario, consulte Introducción al árbol de automatización de la interfaz de usuario.

Vista de control Vista de contenido
MenuBar

- MenuItem (1 o más)
- Otros controles (0 o varios)
MenuBar

- MenuItem (1 o más)
- Otros controles (0 o varios)

Los controles de barra de menús pueden contener otros controles como controles de edición y cuadros combinados dentro de su estructura. Estos controles adicionales corresponden a la categoría "otros controles" que se indica anteriormente en las vistas de control y de contenido.

Propiedades de Automatización de la interfaz de usuario necesarias

La siguiente tabla enumera las propiedades de UI Automation cuyo valor o definición es especialmente relevante para el tipo de control de menú. Para más información sobre las propiedades de automatización de la interfaz de usuario, consulte Propiedades de automatización de la interfaz de usuario: Propiedades para clientes.

Propiedad de automatización de interfaz de usuario Valor Notas
BoundingRectangleProperty Vea las notas. El valor que expone esta propiedad debe incluir todos los controles que se contienen dentro de ella.
NameProperty Vea las notas. El control de barra de menús no necesita un nombre a menos que una aplicación tenga más de una barra de menús. Si hay más de una barra de menús en una aplicación, esta propiedad debe utilizarse para exponer los nombres distintivos, como "Formatting" o "Outlining".
LabeledByProperty Null Los controles de barra de menús nunca tienen una etiqueta.
ControlTypeProperty MenuBar Este valor es el mismo para todos los marcos de trabajo de la interfaz de usuario.
LocalizedControlTypeProperty "barra de menús" Cadena localizada que corresponde al tipo de control MenuBar.
IsContentElementProperty True El control de menú siempre se incluye en la vista de contenido del árbol de automatización de la interfaz de usuario.
IsControlElementProperty True La barra de control de menú siempre se incluye en la vista de control del árbol de UI Automation.
IsOffscreenProperty Vea las notas. El valor de esta propiedad depende de si el control es visible en la pantalla.
OrientationProperty Depende Esta propiedad expone si el control de barra de menús es horizontal o vertical.
IsKeyboardFocusableProperty True Los controles de barra de menús pueden recibir el foco del teclado porque los controles que contienen pueden recibir el foco de teclado.
HelpTextProperty Vea las notas. No hay escenarios en los que sea necesario texto de ayuda para un control de barra de menús.
AcceleratorKeyProperty Null Las barras de menús nunca tienen teclas de aceleración.
AccessKeyProperty "Alt" Al presionar la tecla Alt, el foco siempre debe pasar a la barra de menús de dentro de la aplicación.

Patrones de control de Automatización de la interfaz de usuario necesarios

En la tabla siguiente se muestran los patrones de control de Automatización de la interfaz de usuario requeridos para ser admitidos por los controles de la barra de menú. Para más información sobre los patrones de control, vea UI Automation Control Patterns Overview.

Patrón de control Soporte técnico Notas
IExpandCollapseProvider Depende Si el control se puede expandir o contraer, implemente IExpandCollapseProvider.
IDockProvider Depende Si el control se puede acoplar a diferentes partes de la pantalla, implemente IDockProvider.
ITransformProvider Depende Si el control puede cambiar de tamaño, girarse o moverse, debe implementar ITransformProvider.

Eventos de Automatización de la interfaz de usuario necesarios

En la siguiente tabla se muestra los eventos de automatización de la interfaz de usuario que se deben admitir por todos los controles de barra menú. Para más información sobre los eventos, vea UI Automation Events Overview.

Evento de automatización de la interfaz de usuario Soporte técnico/valor Notas
Evento cambiado por propiedadBoundingRectangleProperty . Obligatorio None
Evento cambiado por propiedadIsOffscreenProperty . Obligatorio None
Evento cambiado por propiedadIsEnabledProperty . Obligatorio None
Evento cambiado por propiedadExpandCollapseStateProperty . Depende None
AutomationFocusChangedEvent Obligatorio None
StructureChangedEvent Obligatorio None

Consulte también