ValidationRule.ValidatesOnTargetUpdated Property


Gets or sets a value that indicates whether the validation rule runs when the target of the Binding is updated.

 property bool ValidatesOnTargetUpdated { bool get(); void set(bool value); };
public bool ValidatesOnTargetUpdated { get; set; }
member this.ValidatesOnTargetUpdated : bool with get, set
Public Property ValidatesOnTargetUpdated As Boolean

Property Value


true if the validation rule runs when the target of the Binding is updated; otherwise, false.


The following example checks whether the TextBox is empty. The ValidationRule, ValueIsNotNull, has ValidatesOnTargetUpdated set to true, so that when the application starts, the ValidationRule runs and displays a message if the TextBox is empty.

<TextBox Width="150"
    <Binding Source="{StaticResource myObject}"
        <src:ValueIsNotNull ValidatesOnTargetUpdated="True" />

The following example shows the ValidationRule that is used in the previous example and the event handler for the Error event.

public class ValueIsNotNull : ValidationRule
    public override ValidationResult Validate(object value, System.Globalization.CultureInfo cultureInfo)
        string str = value as string;

        if (!string.IsNullOrEmpty(str))
            return ValidationResult.ValidResult;
            return new ValidationResult(false, "Value must not be null");
Public Class ValueIsNotNull
    Inherits ValidationRule
    Public Overrides Function Validate(ByVal value As Object, ByVal cultureInfo As System.Globalization.CultureInfo) As ValidationResult
        Dim str As String = TryCast(value, String)

        If Not String.IsNullOrEmpty(str) Then
            Return ValidationResult.ValidResult
            Return New ValidationResult(False, "Value must not be null")
        End If
    End Function
End Class

Applies to