Validation.Error Присоединенное событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит, когда привязанный элемент выполняется с ошибкой проверки, но только для привязок с заданным trueзначениемNotifyOnValidationError.
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
Комментарии
Модель привязки данных WPF позволяет связаться ValidationRules с Binding объектом. Проверка происходит во время передачи значения источника привязки к привязке перед вызовом преобразователя. Ниже описан процесс проверки:
При передаче значения из целевого свойства в исходное свойство подсистема привязки данных сначала удаляет все ValidationError , что может быть добавлено в Validation.Errors присоединенное свойство связанного элемента. Затем он проверяет наличие пользовательских ValidationRuleэлементов, определенных для этого Binding. В этом случае метод вызывается Validate для каждого ValidationRuleиз них до тех пор, пока один из них не перейдет в ошибку или до тех пор, пока все из них не будут пройдены.
После того как существует пользовательское правило, которое не проходит, подсистема привязки создает ValidationError объект и добавляет его в Validation.Errors коллекцию привязанного элемента. Если Validation.Errors не пусто, Validation.HasError присоединенное свойство элемента имеет значение
true. Кроме того, если NotifyOnValidationError для свойства заданоtrueзначение, подсистема привязки Binding вызывает Validation.Error присоединенное событие для элемента.Если все правила передаются, подсистема привязки вызывает преобразователь, если он существует.
Если преобразователь проходит, подсистема привязки вызывает метод задания исходного свойства.
Если привязка связана с ней ExceptionValidationRule и исключение возникает во время шага 4, подсистема привязки проверяет UpdateSourceExceptionFilterналичие. Вы можете использовать обратный UpdateSourceExceptionFilter вызов для предоставления пользовательского обработчика для обработки исключений. UpdateSourceExceptionFilter Если подсистема привязки не указана, Bindingона создает ValidationError исключение и добавляет его в Validation.Errors коллекцию привязанного элемента.
Кроме того, обратите внимание, что допустимая передача значений в любом направлении (целевое или исходное значение) очищает Validationприсоединенное свойство .Errors
Дополнительные сведения см. в разделе "Проверка данных" в обзоре привязки данных.
Сведения о перенаправленных событиях
| Элемент | Ценность |
|---|---|
| Поле идентификатора | ErrorEvent |
| Стратегия маршрутизации | Восходящей |
| Делегат | EventHandler<TEventArgs>, ограничено ValidationErrorEventArgs |