Validation.Error Přidružená událost

Definice

Nastane, když vázaný prvek narazí na chybu ověření, ale pouze pro vazby s hodnotou nastavenou NotifyOnValidationError na true.

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

Poznámky

Model datových vazeb WPF (Windows Presentation Foundation) umožňuje přidružit ValidationRules k objektu Binding . Ověření probíhá během přenosu zdrojových hodnot cíle na vazbu před zavoláním převaděče. Proces ověření popisuje následující:

  1. Při přenosu hodnoty z cílové vlastnosti do zdrojové vlastnosti modul datových vazeb nejprve odebere všechny ValidationError , které mohly být přidány do Validation.Errors připojené vlastnosti vázaného prvku. Pak zkontroluje, jestli pro to ValidationRuleexistují nějaké vlastní Bindingsady definované , v takovém případě volá metodu Validate na každém z ValidationRulenich, dokud jeden z nich neběží do chyby nebo dokud všechny neprojdou.

  2. Jakmile existuje vlastní pravidlo, které neprojde, vytvoří modul vazby ValidationError objekt a přidá ho do Validation.Errors kolekce vázaného prvku. Pokud Validation.Errors není prázdná, připojená Validation.HasError vlastnost prvku je nastavena na true. Pokud je vlastnost NotifyOnValidationError objektu Binding nastavená na true, pak modul vazby vyvolá u elementu přidruženou událost Validation.Error.

  3. Pokud všechna pravidla projdou, vazební modul pak zavolá převaděč, pokud existuje.

  4. Pokud převaděč projde, vazbu modul volá setter zdrojové vlastnosti.

  5. Pokud je ExceptionValidationRule k vazbě přidružená vazba a během kroku 4 se vyvolá výjimka, modul vazeb zkontroluje, zda existuje UpdateSourceExceptionFilter. Máte možnost použít UpdateSourceExceptionFilter zpětné volání k poskytnutí vlastní obslužné rutiny pro zpracování výjimek. UpdateSourceExceptionFilter Pokud není zadán v vazbu Bindingmodul vytvoří ValidationError s výjimkou a přidá ho do Validation.Errors kolekce vázaného prvku.

Všimněte si také, že platný přenos hodnoty v libovolném směru (cíl-zdroj nebo zdroj-cíl) vymaže připojenou ValidationErrors vlastnost.

Další informace najdete v tématu Ověření dat v přehledu datových vazeb.

Informace o směrované události

Item Hodnota
Pole Identifikátor ErrorEvent
Strategie směrování Bublající
Delegát EventHandler<TEventArgs>, omezeno ValidationErrorEventArgs

Platí pro