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 este tema se presentan instrucciones y convenciones para implementar IValueProvider, incluida la información sobre eventos y propiedades. Los vínculos a referencias adicionales se enumeran al final del tema.
El ValuePattern patrón de control se usa para admitir controles que tienen un valor intrínseco que no abarca un intervalo y que se puede representar como una cadena. Esta cadena puede ser editable, en función del control y de su configuración. Para obtener ejemplos de controles que implementan este patrón, consulte Asignación de patrones de control para clientes de automatización de la interfaz de usuario.
Directrices y convenciones de implementación
Al implementar el patrón de control Value, tenga en cuenta las siguientes directrices y convenciones:
- Los controles como ListItem y TreeItem deben admitir ValuePattern si el valor de cualquiera de los elementos es editable, independientemente del modo de edición actual del control. El control primario también debe admitir ValuePattern si los elementos secundarios son modificables.
Ejemplo de un elemento de lista editable
Los controles de edición de una sola línea admiten el acceso a su contenido mediante programación al implementar IValueProvider. Sin embargo, los controles de edición de varias líneas no implementan IValueProvider; en su lugar, proporcionan acceso a su contenido mediante la implementación de ITextProvider.
Para recuperar el contenido textual de un control de edición de varias líneas, el control debe implementar ITextProvider. Sin embargo, ITextProvider no admite establecer el valor de un control.
IValueProvider no admite la recuperación de información de formato o valores de subcadena. Implemente ITextProvider en estos escenarios.
IValueProvider debe implementarse mediante controles como el control de selección Selector de colores de Microsoft Word (que se muestra a continuación), que admite la asignación de cadenas entre un valor de color (por ejemplo, "amarillo") y una estructura RGB interna equivalente.
Ejemplo de asignación de cadenas de muestra de color
- Un control debe tener su IsEnabledProperty establecido en
truey su IsReadOnlyProperty establecido enfalseantes de permitir una llamada a SetValue.
Miembros necesarios para IValueProvider
Se requieren las siguientes propiedades y métodos para implementar IValueProvider.
| Miembros necesarios | Tipo de miembro | Notas |
|---|---|---|
| IsReadOnlyProperty | Propiedad | Ninguno |
| ValueProperty | Propiedad | Ninguno |
| SetValue | Método | Ninguno |
Excepciones
Los proveedores deben producir las siguientes excepciones.
| Tipo de excepción | Condición |
|---|---|
| InvalidOperationException | SetValue - Si la información específica de la configuración regional se pasa a un control en un formato incorrecto, como una fecha mal formateada. |
| ArgumentException | SetValue - Si no se puede convertir un nuevo valor de una cadena a un formato que reconoce el control. |
| ElementNotEnabledException | SetValue - Cuando se intenta manipular un control que no está habilitado. |
Consulte también
- Información general acerca de los patrones de control de UI Automation
- Patrones de control compatibles en un proveedor de UI Automation
- Patrones de control de automatización de la interfaz de usuario para clientes
- Ejemplo de inserción de texto de ValuePattern
- Información general sobre el árbol de la UI Automation
- Utilizar el almacenamiento en caché en la automatización de la interfaz de usuario