Información general acerca de las propiedades de UI Automation

NotaNota

Esta documentación está dirigida a desarrolladores de .NET Framework que desean usar las clases administradas de UI Automation definidas en el espacio de nombres System.Windows.Automation.Para obtener información actualizada sobre UI Automation, vea Windows Automation API: UI Automation.

Los proveedores de Automatización de la interfaz de usuario exponen las propiedades en elementos de Microsoft UI Automation. Estas propiedades permiten que las aplicaciones cliente de Automatización de la interfaz de usuario detecten información acerca de algunas partes de la user interface (UI), sobre todo controles, incluidos los datos estáticos y dinámicos.

Este tema contiene las secciones siguientes.

  • Identificadores de propiedad
  • Propiedades según categoría
  • Localización
  • Propiedades y eventos
  • Temas relacionados

En esta sección se proporciona información general acerca de las propiedades de Microsoft UI Automation. En los temas siguientes se ofrece información más específica:

Identificadores de propiedad

Cada propiedad se identifica mediante un número y un nombre. Los nombres de las propiedades solo se usan para la depuración y el diagnóstico. Los proveedores usan los IDs numéricos para identificar las solicitudes de propiedades entrantes. En cambio, las aplicaciones cliente solo usan AutomationProperty, que encapsula el número y el nombre, para identificar las propiedades que desean recuperar.

En varias clases, están disponibles como campos objetos AutomationProperty que representan propiedades concretas. Por razones de seguridad, los proveedores de Automatización de la interfaz de usuario obtienen estos objetos de un conjunto independiente de clases que están incluidas en Uiautomationtypes.dll.

En la tabla siguiente se clasifican las propiedades según las clases que contienen los IDs de AutomationProperty.

Tipos de propiedades

Los clientes obtienen los identificadores de

Los proveedores obtienen los identificadores de

Propiedades comunes a todos los elementos (consulte las tablas siguientes)

AutomationElement

AutomationElementIdentifiers

Posición de una ventana de acoplamiento

DockPattern

DockPatternIdentifiers

Estado de un elemento que se puede expandir y contraer

ExpandCollapsePattern

ExpandCollapsePatternIdentifiers

Propiedades de un elemento en una cuadrícula

GridItemPattern

GridItemPatternIdentifiers

Propiedades de una cuadrícula

GridPattern

GridPatternIdentifiers

Vista actual y compatible de un elemento que tiene varias vistas

MultipleViewPattern

MultipleViewPatternIdentifiers

Propiedades de un elemento que se desplaza en un intervalo de valores, como un control deslizante

RangeValuePattern

RangeValuePatternIdentifiers

Propiedades de una ventana de desplazamiento

ScrollPattern

ScrollPatternIdentifiers

Estado y contenedor de un elemento que se puede seleccionar, como en una lista

SelectionItemPattern

SelectionItemPatternIdentifiers

Propiedades de un control que contiene elementos de selección

SelectionPattern

SelectionPatternIdentifiers

Encabezados de fila y columna de un elemento de una tabla

TableItemPattern

TableItemPatternIdentifiers

Orientación y encabezados de fila y columna de una tabla

TablePattern

TablePatternIdentifiers

Estado de un control de alternancia

TogglePattern

TogglePatternIdentifiers

Funcionalidad de un elemento que se puede mover, girar o cambiar de tamaño

TransformPattern

TransformPatternIdentifiers

Valor y funcionalidad de lectura y escritura de un elemento que tiene un valor

ValuePattern

ValuePatternIdentifiers

Funcionalidad y estado de una ventana

WindowPattern

WindowPatternIdentifiers

Propiedades según categoría

Las tablas siguientes clasifican las propiedades cuyos IDs se encuentran en AutomationElement y AutomationElementIdentifiers. Estas propiedades son comunes a todos los controles. Probablemente todos ellos, con excepción de unos pocos, sean estáticos mientras dura la aplicación de proveedor; la mayoría de las propiedades dinámicas están asociadas a patrones de control.

La columna Acceso de propiedad muestra los demás descriptores de acceso de cada propiedad, además de GetCurrentPropertyValue y GetCachedPropertyValue. Para obtener más información acerca de la obtención de propiedades en una aplicación cliente, consulte Propiedades de UI Automation para clientes.

NotaNota

Para obtener información concreta de cada propiedad, siga el vínculo de la columna Acceso de propiedad.

Características de presentación

Identificador de propiedad

Acceso de propiedad

BoundingRectangleProperty

BoundingRectangle

CultureProperty

no disponible

HelpTextProperty

HelpText

IsOffscreenProperty

IsOffscreen

OrientationProperty

Orientation

Tipo de elemento

Identificador de propiedad

Acceso de propiedad

ControlTypeProperty

ControlType

IsContentElementProperty

IsContentElement

IsControlElementProperty

IsControlElement

ItemTypeProperty

ItemType

LocalizedControlTypeProperty

LocalizedControlType

Identificación

Identificador de propiedad

Acceso de propiedad

AutomationIdProperty

AutomationId

ClassNameProperty

ClassName

FrameworkIdProperty

FrameworkId

LabeledByProperty

LabeledBy

NameProperty

Name

ProcessIdProperty

ProcessId

RuntimeIdProperty

GetRuntimeId

NativeWindowHandleProperty

NativeWindowHandle

Interacción

Identificador de propiedad

Acceso de propiedad

AcceleratorKeyProperty

AcceleratorKey

AccessKeyProperty

AccessKey

ClickablePointProperty

GetClickablePoint

HasKeyboardFocusProperty

HasKeyboardFocus

IsEnabledProperty

IsEnabled

IsKeyboardFocusableProperty

IsKeyboardFocusable

Compatibilidad para patrones

Identificador de propiedad

Acceso de propiedad

IsDockPatternAvailableProperty

GetSupportedPatterns

IsExpandCollapsePatternAvailableProperty

GetSupportedPatterns

IsGridItemPatternAvailableProperty

GetSupportedPatterns

IsGridPatternAvailableProperty

GetSupportedPatterns

IsInvokePatternAvailableProperty

GetSupportedPatterns

IsMultipleViewPatternAvailableProperty

GetSupportedPatterns

IsRangeValuePatternAvailableProperty

GetSupportedPatterns

IsScrollItemPatternAvailableProperty

GetSupportedPatterns

IsScrollPatternAvailableProperty

GetSupportedPatterns

IsSelectionItemPatternAvailableProperty

GetSupportedPatterns

IsSelectionPatternAvailableProperty

GetSupportedPatterns

IsTableItemPatternAvailableProperty

GetSupportedPatterns

IsTablePatternAvailableProperty

GetSupportedPatterns

IsTextPatternAvailableProperty

GetSupportedPatterns

IsTogglePatternAvailableProperty

GetSupportedPatterns

IsTransformPatternAvailableProperty

GetSupportedPatterns

IsValuePatternAvailableProperty

GetSupportedPatterns

IsWindowPatternAvailableProperty

GetSupportedPatterns

Varios

Identificador de propiedad

Acceso de propiedad

IsRequiredForFormProperty

IsRequiredForForm

IsPasswordProperty

IsPassword

ItemStatusProperty

ItemStatus

Localización

Los proveedores de UI Automation deberían presentar las propiedades siguientes en el idioma del sistema operativo:

Propiedades y eventos

Los eventos de cambio de propiedad están estrechamente relacionados con las propiedades de UI Automation. En el caso de las propiedades dinámicas, la aplicación cliente necesita saber si un valor de propiedad ha cambiado para poder actualizar su caché de información o reaccionar ante la nueva información de alguna otra manera.

Los proveedores provocan eventos cuando se produce algún cambio en la UI. Por ejemplo, si se activa o desactiva una casilla, la implementación del patrón de alternancia del proveedor provoca un evento de cambio de propiedad. Los proveedores pueden provocar eventos de forma selectiva, dependiendo de si hay clientes a la escucha de eventos o eventos específicos.

No todos los cambios de propiedad provocan eventos; esto depende totalmente de la implementación del elemento por parte del proveedor de Automatización de la interfaz de usuario. Por ejemplo, los proveedores de proxy estándar de cuadros de lista no provocan un evento cuando SelectionProperty cambia. En este caso, la aplicación debe realizar escuchas de ElementSelectedEvent.

Los clientes realizan escuchas de eventos suscribiéndose a ellos. La suscripción a eventos supone la creación de métodos delegados que puedan controlar los eventos y la posterior transferencia de esos métodos a la UI Automation junto con los eventos específicos que se tratarán en esos métodos. En el caso concreto de los eventos de cambio de propiedad, los clientes deben implementar AutomationPropertyChangedEventHandler.

Vea también

Tareas

Buscar un elemento de UI Automation basándose en una condición de propiedad

Devolución de propiedades por parte de un proveedor de UI Automation

Provocar eventos desde un proveedor de UI Automation

Conceptos

Almacenar en caché en los clientes de automatización de la interfaz de usuario

Propiedades de UI Automation para clientes

Implementación del proveedor de UI Automation en el servidor