Compartir a través de


Compatibilidad de UI Automation para el tipo de control ScrollBar

Nota:

Esta documentación está pensada para desarrolladores de .NET Framework que desean usar las clases de automatización de la interfaz de usuario administradas definidas en el espacio de nombres System.Windows.Automation. Para obtener la información más reciente sobre la automatización de la interfaz de usuario, consulte API de Windows Automation: Automatización de la interfaz de usuario.

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

Los controles de barra de desplazamiento permiten a un usuario desplazar el contenido dentro de una ventana o contenedor de elementos. El control se compone de un conjunto de botones y un control pulgar.

En las secciones siguientes se define la estructura de árbol de automatización de la interfaz de usuario necesaria, las propiedades, los patrones de control y los eventos para el tipo de control ScrollBar. 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 muestra 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 desplazamiento y se describe lo que se puede contener 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
barra de desplazamiento

- Botón (2 o 4)
- Thumb (0 o 1)
No aplicable. El control de barra de desplazamiento no contiene contenido.

El control de barra de desplazamiento siempre tiene de tres a cinco elementos secundarios. Dado que el subárbol tiene más de un control de botón, debe establecer un valor específico AutomationIdProperty en cada elemento para que se puedan detectar para las herramientas de automatización de pruebas.

Propiedades de Automatización de la interfaz de usuario necesarias

En la tabla siguiente se enumeran las propiedades de automatización de la interfaz de usuario cuyo valor o definición es especialmente relevante para los controles de barra de desplazamiento. Tenga en cuenta que un control de barra de desplazamiento tiene contenido; su funcionalidad se expone mediante el patrón de control Scroll, que se admite en el contenedor que se desplaza.

Para obtener 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 Importancia 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.
IsKeyboardFocusableProperty Vea las notas. Si el control puede recibir el foco del teclado, debe admitir esta propiedad.
NameProperty Null El control de barra de desplazamiento no tiene elementos de contenido y NameProperty no necesita ser establecido.
ClickablePointProperty No es un número. El control de barra de desplazamiento no tiene puntos en los que se pueden hacer clic.
LabeledByProperty Null Las barras de desplazamiento no tienen etiquetas.
ControlTypeProperty barra de desplazamiento Este valor es el mismo para todos los marcos de trabajo. Las barras de desplazamiento que funcionan como controles deslizantes deben usar el tipo de control Slider.
LocalizedControlTypeProperty "barra de desplazamiento" Cadena localizada que se corresponde con el tipo de control Button.
IsContentElementProperty Falso El control de barra de desplazamiento nunca es un elemento de contenido. Si la barra de desplazamiento es un control independiente, debe cumplir el tipo de control Slider y devolver ControlType.Slider para la propiedad ControlType .
IsControlElementProperty Cierto La barra de desplazamiento siempre debe ser un control.
OrientationProperty Cierto El control de barra de desplazamiento siempre debe exponer su orientación horizontal o vertical.

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

En la tabla siguiente se enumeran los patrones de control de automatización de la interfaz de usuario necesarios para ser compatibles con los controles de barra de desplazamiento. Para obtener más información sobre los patrones de control, consulte Introducción a los patrones de control de automatización de la interfaz de usuario. Tenga en cuenta que cuando se usa una barra de desplazamiento como control solo para la manipulación del mouse, no admite patrones de control. Si se usa como control deslizante dentro de una aplicación, se le debe proporcionar el tipo de control Slider.

Patrón de control Apoyo Notas
IScrollProvider Nunca El patrón de control Scroll nunca se admite directamente en la barra de desplazamiento.
IRangeValueProvider Depende La compatibilidad de esta funcionalidad solo es necesaria si el patrón de control Scroll no se admite en el contenedor que tenga la barra de desplazamiento.

Eventos de Automatización de la interfaz de usuario necesarios

En la tabla siguiente se enumeran los eventos de automatización de la interfaz de usuario necesarios para ser compatibles con todos los controles de barra de desplazamiento. 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 Ninguno
Evento cambiado por propiedadIsOffscreenProperty . Obligatorio Ninguno
Evento cambiado por propiedadIsEnabledProperty . Obligatorio Ninguno
Evento cambiado por propiedadHorizontallyScrollableProperty . Nunca Ninguno
Evento cambiado por propiedadHorizontalScrollPercentProperty . Nunca Ninguno
Evento cambiado por propiedadHorizontalViewSizeProperty . Nunca Ninguno
Evento cambiado por propiedadVerticalScrollPercentProperty . Nunca Ninguno
Evento cambiado por propiedadVerticallyScrollableProperty . Nunca Ninguno
Evento cambiado por propiedadVerticalViewSizeProperty . Nunca Ninguno
Evento cambiado por propiedadValueProperty . Depende Ninguno
AutomationFocusChangedEvent Obligatorio Ninguno
StructureChangedEvent Obligatorio Ninguno

Consulte también