Freigeben über


Validation.Error Angefügtes Ereignis

Definition

Tritt auf, wenn das gebundene Element in einem Überprüfungsfehler ausgeführt wird, jedoch nur für Bindungen mit dem Wert, auf trueden NotifyOnValidationError festgelegt ist.

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

Hinweise

Mit dem WPF-Datenbindungsmodell können Sie ihr Binding Objekt zuordnenValidationRules. Die Überprüfung erfolgt während der Bindung von Ziel-zu-Bindung-Quellwertübertragungen, bevor der Konverter aufgerufen wird. Im Folgenden wird der Überprüfungsprozess beschrieben:

  1. Wenn ein Wert von der Zieleigenschaft in die Quelleigenschaft übertragen wird, entfernt das Datenbindungsmodul zuerst alle ValidationError Elemente, die der Validation.Errors angefügten Eigenschaft des gebundenen Elements hinzugefügt wurden. Anschließend wird überprüft, ob benutzerdefinierte ValidationRuleElemente dafür Bindingdefiniert sind. In diesem Fall ruft sie die Validate Methode für jedes s ValidationRuleauf, bis einer von ihnen zu einem Fehler oder bis alle übergeben wird.

  2. Sobald eine benutzerdefinierte Regel vorhanden ist, die nicht übergeben wird, erstellt das Bindungsmodul ein ValidationError Objekt und fügt es der Validation.Errors Auflistung des gebundenen Elements hinzu. Wenn Validation.Errors nicht leer ist, wird die Validation.HasError angefügte Eigenschaft des Elements auf truefestgelegt. Wenn die NotifyOnValidationError Eigenschaft des Binding Elements festgelegt trueist, löst das Bindungsmodul außerdem das Validation.Error angefügte Ereignis für das Element aus.

  3. Wenn alle Regeln übergeben werden, ruft das Bindungsmodul den Konverter auf, falls vorhanden.

  4. Wenn der Konverter übergeben wird, ruft das Bindungsmodul den Setter der Quelleigenschaft auf.

  5. Wenn die Bindung mit ExceptionValidationRule dieser verknüpft ist und während Schritt 4 eine Ausnahme ausgelöst wird, überprüft das Bindungsmodul, ob es ein UpdateSourceExceptionFilter. Sie haben die Möglichkeit, den UpdateSourceExceptionFilter Rückruf zu verwenden, um einen benutzerdefinierten Handler für die Behandlung von Ausnahmen bereitzustellen. Wenn für UpdateSourceExceptionFilter das BindingBindungsmodul kein Wert angegeben ist, erstellt das Bindungsmodul eine ValidationError Ausnahme und fügt es der Validation.Errors Auflistung des gebundenen Elements hinzu.

Beachten Sie außerdem, dass eine gültige Wertübertragung in eine Richtung (Target-to-Source oder Source-to-Target) die ValidationErrors angefügte Eigenschaft löscht.

Weitere Informationen finden Sie unter "Datenüberprüfung" in der Datenbindungsübersicht.

Routingereignisinformationen

Element Wert
Bezeichnerfeld ErrorEvent
Routingstrategie Bubbling
Delegierter EventHandler<TEventArgs>, eingeschränkt durch ValidationErrorEventArgs

Gilt für: