Validation.Error Ansluten händelse

Definition

Inträffar när det bundna elementet stöter på ett valideringsfel, men bara för bindningar med värdet NotifyOnValidationError inställt på true.

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

Kommentarer

Med WPF databindningsmodell kan du associera ValidationRules med ditt Binding-objekt. Validering sker under bindning av källvärdeöverföring från mål till bindning innan konverteraren anropas. Följande beskriver valideringsprocessen:

  1. När ett värde överförs från målegenskapen till källegenskapen tar databindningsmotorn först bort alla ValidationError som kan ha lagts till i egenskapen Validation.Errors bifogad för det bundna elementet. Den kontrollerar sedan om det finns några anpassade ValidationRules som definierats för det Binding, i vilket fall den anropar Validate metoden på var och en av dem tills en av ValidationRuledem stöter på ett fel eller tills alla passerar.

  2. När det finns en anpassad regel som inte godkänns skapar bindningsmotorn ett ValidationError-objekt och lägger till det i samlingen Validation.Errors för det bundna elementet. När Validation.Errors inte är tom anges Validation.HasError bifogad egenskap för elementet till true. Om egenskapen NotifyOnValidationError för Binding är inställd på truegenererar bindningsmotorn dessutom den Validation.Error kopplade händelsen för elementet.

  3. Om alla regler godkänns anropar bindningsmotorn konverteraren om det finns någon.

  4. Om konverteraren godkänns anropar bindningsmotorn setter för källegenskapen.

  5. Om bindningen har en ExceptionValidationRule associerad med den och ett undantag utlöses under steg 4 kontrollerar bindningsmotorn om det finns en UpdateSourceExceptionFilter. Du har möjlighet att använda återanropet UpdateSourceExceptionFilter för att tillhandahålla en anpassad hanterare för hantering av undantag. Om en UpdateSourceExceptionFilter inte anges på Binding skapar bindningsmotorn en ValidationError med undantaget och lägger till den i samlingen Validation.Errors för det bundna elementet.

Observera också att en giltig värdeöverföring i endera riktningen (mål-till-källa eller källa-till-mål) rensar egenskapen Validation.Errors bifogad.

Mer information finns i "Dataverifiering" i Översikt över databindning.

Information om dirigerad händelse

Objekt Value
Identifierarfält ErrorEvent
Routningsstrategi Bubblande
Delegera EventHandler<TEventArgs>, begränsad av ValidationErrorEventArgs

Gäller för