Implementación del patrón de control SelectionItem de UI Automation

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.

En este tema se presentan las directrices y convenciones para implementar ISelectionItemProvider, incluida la información sobre propiedades, métodos y eventos. Al final de la información general se proporcionan vínculos a referencias adicionales.

El patrón de control SelectionItemPattern se usa para admitir controles que actúan como elementos secundarios individuales y seleccionables de controles de contenedor que implementan ISelectionProvider. Para obtener ejemplos de controles que implementan el patrón de control SelectionItem, vea Asignación de patrones de control para clientes de Automatización de interfaz de usuario.

Directrices y convenciones de implementación

Al implementar el patrón de control Selection Item, tenga en cuenta las siguientes directrices y convenciones:

Miembros requeridos para ISelectionItemProvider

Para implementar ISelectionItemProvider, se requieren las siguientes propiedades, métodos y eventos.

Miembros requeridos Tipo de miembro Notas
CanSelectMultiple Propiedad None
IsSelectionRequired Propiedad None
GetSelection Método None
InvalidatedEvent Evento Se produce cuando una selección de un contenedor ha cambiado de manera considerable y requiere el envío de más eventos ElementSelectedEvent y ElementRemovedFromSelectionEvent de lo que permite la constante InvalidateLimit .

Excepciones

Los proveedores deben producir las siguientes excepciones.

Tipo de excepción Condición
InvalidOperationException Cuando se intenten cualquiera de las siguientes opciones:

- RemoveFromSelection en un contenedor de selección única donde IsSelectionRequiredProperty = true y ya hay un elemento seleccionado.
- RemoveFromSelection en un contenedor de selección múltiple donde IsSelectionRequiredProperty = true y solo hay un elemento seleccionado.
- AddToSelection en un contenedor de selección única donde CanSelectMultipleProperty = false y ya hay otro elemento seleccionado.

Consulte también