Validation.Error Evento adjunto
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Se produce cuando el elemento enlazado se ejecuta en un error de validación, pero solo para los enlaces con el NotifyOnValidationError valor establecido trueen .
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
Comentarios
El modelo de enlace de datos de WPF permite asociar ValidationRules con el Binding objeto . La validación se produce durante la transferencia de valores de origen de destino a enlace antes de llamar al convertidor. A continuación se describe el proceso de validación:
Cuando se transfiere un valor de la propiedad de destino a la propiedad de origen, el motor de enlace de datos quita primero cualquiera ValidationError que se haya agregado a la Validation.Errors propiedad adjunta del elemento enlazado. A continuación, comprueba si hay algún elemento personalizado ValidationRuledefinido para ese Binding, en cuyo caso llama al Validate método en cada uno de los ValidationRules hasta que uno de ellos se ejecute en un error o hasta que se pasen todos ellos.
Una vez que haya una regla personalizada que no pase, el motor de enlace crea un ValidationError objeto y lo agrega a la Validation.Errors colección del elemento enlazado. Cuando Validation.Errors no está vacío, la Validation.HasError propiedad adjunta del elemento se establece en
true. Además, si la NotifyOnValidationError propiedad de Binding está establecidatrueen , el motor de enlace genera el Validation.Error evento adjunto en el elemento .Si se pasan todas las reglas, el motor de enlace llama al convertidor, si existe uno.
Si el convertidor pasa, el motor de enlace llama al establecedor de la propiedad de origen.
Si el enlace tiene asociado ExceptionValidationRule y se produce una excepción durante el paso 4, el motor de enlace comprueba si hay un UpdateSourceExceptionFilter. Tiene la opción de usar la UpdateSourceExceptionFilter devolución de llamada para proporcionar un controlador personalizado para controlar excepciones. Si no se especifica en UpdateSourceExceptionFilterBinding, el motor de enlace crea un ValidationError con la excepción y lo agrega a la Validation.Errors colección del elemento enlazado.
Tenga en cuenta también que una transferencia de valores válida en cualquier dirección (de destino a origen o de origen a destino) borra la Validationpropiedad adjunta .Errors
Para obtener más información, vea "Validación de datos" en Introducción al enlace de datos.
Información del evento enrutado
| Elemento | Importancia |
|---|---|
| Campo identificador | ErrorEvent |
| Estrategia de enrutamiento | Bubbling |
| Delegado | EventHandler<TEventArgs>, restringido por ValidationErrorEventArgs |