Бөлісу құралы:


Validation.Error Присоединенное событие

Определение

Происходит, когда привязанный элемент выполняется с ошибкой проверки, но только для привязок с заданным trueзначениемNotifyOnValidationError.

see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler
see AddErrorHandler, and RemoveErrorHandler

Комментарии

Модель привязки данных WPF позволяет связаться ValidationRules с Binding объектом. Проверка происходит во время передачи значения источника привязки к привязке перед вызовом преобразователя. Ниже описан процесс проверки:

  1. При передаче значения из целевого свойства в исходное свойство подсистема привязки данных сначала удаляет все ValidationError , что может быть добавлено в Validation.Errors присоединенное свойство связанного элемента. Затем он проверяет наличие пользовательских ValidationRuleэлементов, определенных для этого Binding. В этом случае метод вызывается Validate для каждого ValidationRuleиз них до тех пор, пока один из них не перейдет в ошибку или до тех пор, пока все из них не будут пройдены.

  2. После того как существует пользовательское правило, которое не проходит, подсистема привязки создает ValidationError объект и добавляет его в Validation.Errors коллекцию привязанного элемента. Если Validation.Errors не пусто, Validation.HasError присоединенное свойство элемента имеет значение true. Кроме того, если NotifyOnValidationError для свойства задано trueзначение, подсистема привязки Binding вызывает Validation.Error присоединенное событие для элемента.

  3. Если все правила передаются, подсистема привязки вызывает преобразователь, если он существует.

  4. Если преобразователь проходит, подсистема привязки вызывает метод задания исходного свойства.

  5. Если привязка связана с ней ExceptionValidationRule и исключение возникает во время шага 4, подсистема привязки проверяет UpdateSourceExceptionFilterналичие. Вы можете использовать обратный UpdateSourceExceptionFilter вызов для предоставления пользовательского обработчика для обработки исключений. UpdateSourceExceptionFilter Если подсистема привязки не указана, Bindingона создает ValidationError исключение и добавляет его в Validation.Errors коллекцию привязанного элемента.

Кроме того, обратите внимание, что допустимая передача значений в любом направлении (целевое или исходное значение) очищает Validationприсоединенное свойство .Errors

Дополнительные сведения см. в разделе "Проверка данных" в обзоре привязки данных.

Сведения о перенаправленных событиях

Элемент Ценность
Поле идентификатора ErrorEvent
Стратегия маршрутизации Восходящей
Делегат EventHandler<TEventArgs>, ограничено ValidationErrorEventArgs

Применяется к