Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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 esta introducción se presentan los patrones de control para los clientes de Automatización de la interfaz de usuario. Incluye información sobre cómo un cliente de Automatización de la interfaz de usuario puede usar patrones de control para acceder a información sobre la interfaz de usuario (UI).
Los patrones de control proporcionan una manera de clasificar y exponer la funcionalidad de un control independientemente del tipo de control o la apariencia del control. Los clientes de automatización de la interfaz de usuario pueden examinar un AutomationElement para determinar qué patrones de control están admitidos y tener la certeza del comportamiento del control.
Para obtener una lista completa de los patrones de control, consulte Información general sobre los patrones de control de automatización de la interfaz de usuario.
Obtención de patrones de control
Los clientes recuperan un patrón de control de un AutomationElement mediante una llamada a AutomationElement.GetCachedPattern o AutomationElement.GetCurrentPattern.
Los clientes pueden usar el GetSupportedPatterns método o una propiedad individual IsPatternAvailable
(por ejemplo, IsTextPatternAvailableProperty) para determinar si se admite un patrón o un grupo de patrones en .AutomationElement Sin embargo, es más eficaz intentar obtener el patrón de control y probar una null
referencia que comprobar las propiedades admitidas y recuperar el patrón de control, ya que da como resultado menos llamadas entre procesos.
En el siguiente ejemplo se muestra cómo obtener un patrón de control TextPattern de un AutomationElement.
// Specify the control type we're looking for, in this case 'Document'
PropertyCondition cond = new PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.Document);
// target --> The root AutomationElement.
AutomationElement textProvider = target.FindFirst(TreeScope.Descendants, cond);
targetTextPattern = textProvider.GetCurrentPattern(TextPattern.Pattern) as TextPattern;
if (targetTextPattern == null)
{
Console.WriteLine("Root element does not contain a descendant that supports TextPattern.");
return;
}
Recuperación de propiedades en patrones de control
Para recuperar los valores de propiedad en los patrones de control, los clientes pueden llamar a AutomationElement.GetCachedPropertyValue o AutomationElement.GetCurrentPropertyValue y convertir el objeto devuelto al tipo apropiado. 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.
Además de los GetPropertyValue
métodos, se pueden recuperar los valores de propiedad a través de los accesores de Common Language Runtime (CLR) para acceder a las propiedades de automatización de la interfaz de usuario en un patrón.
Controles con patrones variables
Algunos tipos de control admiten patrones diferentes en función de su estado o de la manera en que se usa el control. Algunos ejemplos de controles que pueden tener patrones variables son las vistas de lista (miniaturas, mosaicos, iconos, lista, detalles), los gráficos de Microsoft Excel (circulares, de líneas, de barras, valores de celda con fórmulas), el área de documento de Microsoft Word (Normal, Diseño Web, Esquema, Diseño de impresión, Vista previa de impresión) y las máscaras de Media Player de Microsoft Windows.
Los controles que implementan tipos de control personalizados pueden tener cualquier conjunto de patrones de control necesarios para representar su funcionalidad.
Consulte también
- patrones de control de automatización de la interfaz de usuario de
- Patrón de Texto de Automatización de la Interfaz de Usuario de
- Invocar un control mediante la automatización de la interfaz de usuario
- Obtener el estado de alternancia de una casilla mediante UI Automation
- asignación de patrones de control de para clientes de automatización de la interfaz de usuario
- Ejemplo de inserción de texto de TextPattern
- Ejemplo de búsqueda y selección de TextPattern
- Ejemplo InvokePattern, ExpandCollapsePattern y TogglePattern