Share via


Compatibilidad de UI Automation para el tipo de control Edit

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.

Este tema proporciona información sobre la compatibilidad de la UI Automation con el tipo de control de edición. En UI Automation, 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 Automatización de la interfaz de usuario, los valores de propiedad de Automatización de la interfaz de usuario y los patrones de control.

Los controles de edición habilitan a un usuario para que vea y edite una línea de texto simple sin compatibilidad con formato enriquecido.

En las secciones siguientes se definen la estructura de árbol, las propiedades, los patrones de control y los eventos para el tipo de control de edición de UI Automation necesarios. Los requisitos de UI Automation se aplican a todos los controles de edición, 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 UI Automation que pertenece a los controles de edición y se describe lo que puede incluirse en cada vista. Para más información sobre el árbol de UI Automation,consulte Introducción al árbol de UI Automation.

Vista de control Vista de contenido
Editar Editar

Los controles que implementan el tipo de control Edit no tendrán barras de desplazamiento en la vista de control del árbol UI Automation porque es un control de línea única. La única línea de texto puede encapsularse en algunos escenarios de diseño. El tipo de control Edit es idóneo para contener pequeñas cantidades de texto editable o seleccionable.

Propiedades de Automatización de la interfaz de usuario necesarias

En la tabla siguiente se muestran las propiedades de Automatización de la interfaz de usuario cuyo valor o definición es especialmente relevante para los controles de edición. 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 para clientes.

Propiedad de automatización de interfaz de usuario Valor Notas
AutomationIdProperty Vea las notas. El valor de esta propiedad debe ser único en todos los controles de una aplicación.
BoundingRectangleProperty Vea las notas. El rectángulo exterior que contiene el control completo.
ClickablePointProperty Vea las notas. El control de edición debe tener un punto en el que se pueda hacer clic que dé enfoque de entrada a la parte de edición del control cuando un usuario hace clic en el mouse allí.
IsKeyboardFocusableProperty Vea las notas. Si el control puede recibir el foco del teclado, debe admitir esta propiedad.
NameProperty Vea las notas. El nombre del control de edición se genera normalmente desde una etiqueta de texto estático. Si no hay ninguna etiqueta de texto estático, el desarrollador de aplicaciones debe asignar un valor de propiedad para Name . La propiedad Name nunca debe incluir el contenido textual del control de edición.
LabeledByProperty Vea las notas. Si hay una etiqueta de texto estático asociada al control, esta propiedad debe exponer una referencia a ese control. Si el control de texto es un subcomponente de otro control, no tendrá un conjunto de propiedades LabeledBy .
ControlTypeProperty Editar Este valor es el mismo para todos los marcos de trabajo de la interfaz de usuario.
LocalizedControlTypeProperty "edición" Cadena localizada que corresponde al tipo de control Edit.
IsContentElementProperty True El control de edición siempre se incluye en la vista de contenido del árbol de UI Automation.
IsControlElementProperty True El control de edición siempre se incluye en la vista de control del árbol de UI Automation.
IsPasswordProperty Vea las notas. Debe establecerse en true en controles de edición que contienen contraseñas. Si un control de edición contiene el contenido de la contraseña, esta propiedad se puede usar por un lector de pantalla para determinar si las pulsaciones de teclas se deben leer cuando el usuario las introduce.

Propiedades y patrones de control de Automatización de la interfaz de usuario necesarios

En la tabla siguiente se muestran los patrones de control que se deben admitir por todos los controles de edición. Para más información sobre los patrones de control, vea UI Automation Control Patterns Overview.

Patrón de control/propiedad de patrón de control Soporte técnico/valor Notas
ITextProvider Depende Los controles de edición deben admitir el patrón de control Text porque siempre debe haber información de texto detallada disponible para los clientes.
IValueProvider Depende Todos los controles de edición que toman una cadena deben exponer el patrón Value.
IsReadOnly Vea las notas. Se debe establecer esta propiedad para indicar si el control puede tener un valor establecido mediante programación o si es editable por el usuario.
Value Vea las notas. Esta propiedad devolverá el contenido textual del control de edición. Si la IsPasswordProperty se establece en true, esta propiedad debe provocar una InvalidOperationException cuando se solicite.
IRangeValueProvider Depende Todos los controles de edición que toman un intervalo numérico deben exponer el patrón de control Range Value.
Minimum Vea las notas. Esta propiedad debe ser el valor mínimo en el que se puede establecer el contenido del control de edición.
Maximum Vea las notas. Esta propiedad debe ser el valor máximo en el que se puede establecer el contenido del control de edición.
SmallChange Vea las notas. Esta propiedad debe indicar el número de posiciones decimales en el que se puede establecer el valor. Si la edición solo acepta enteros, la SmallChangeProperty debe ser 1. Si la edición acepta un intervalo de entre 1,0 y 2,0, la SmallChangeProperty debe ser 0,1. Si el control de edición acepta un intervalo de entre 1,0 y 2,0, la SmallChangeProperty debe ser 0,001.
LargeChange Null Esta propiedad no necesita exponerse en un control de edición.
Value Vea las notas. Esta propiedad indicará el contenido numérico del control de edición. Cuando se establece un valor más preciso por un cliente de UI Automation dentro de los intervalos especificados en las propiedades Minimum y Maximum, la propiedad Value se redondeará automáticamente al valor aceptado más cercano.

Eventos de Automatización de la interfaz de usuario necesarios

En la tabla siguiente se muestran los eventos de UI Automation que se deben admitir por parte de todos los controles de edición. Para más información sobre eventos, vea UI Automation Events Overview.

Evento de Automatización de la interfaz de usuario Soporte técnico Notas
InvalidatedEvent Obligatorio None
TextSelectionChangedEvent Obligatorio None
TextChangedEvent Obligatorio None
Evento cambiado por propiedadBoundingRectangleProperty . Obligatorio None
Evento cambiado por propiedadIsOffscreenProperty . Obligatorio None
Evento cambiado por propiedadIsEnabledProperty . Obligatorio None
Evento cambiado por propiedadNameProperty . Obligatorio None
Evento cambiado por propiedadValueProperty . Depende None
Evento cambiado por propiedadHorizontallyScrollableProperty . Nunca None
Evento cambiado por propiedadHorizontalScrollPercentProperty . Nunca None
Evento cambiado por propiedadHorizontalViewSizeProperty . Nunca None
Evento cambiado por propiedadVerticalScrollPercentProperty . Nunca None
Evento cambiado por propiedadVerticallyScrollableProperty . Nunca None
Evento cambiado por propiedadVerticalViewSizeProperty . Nunca None
Evento cambiado por propiedadValueProperty . Depende Si el control admite el patrón de control Range Value, debe admitir este evento.
AutomationFocusChangedEvent Obligatorio None
StructureChangedEvent Obligatorio None

Consulte también