ValidationRule.Validate ValidationRule.Validate ValidationRule.Validate Method

Definition

Führt Validierungsprüfungen für einen Wert aus.Performs validation checks on a value.

Überlädt

Validate(Object, CultureInfo) Validate(Object, CultureInfo) Validate(Object, CultureInfo)

Führt beim Überschreiben in einer abgeleiteten Klasse Validierungsprüfungen für einen Wert durch.When overridden in a derived class, performs validation checks on a value.

Validate(Object, CultureInfo, BindingExpressionBase) Validate(Object, CultureInfo, BindingExpressionBase) Validate(Object, CultureInfo, BindingExpressionBase)

Führt Validierungsprüfungen für einen Wert aus.Performs validation checks on a value.

Validate(Object, CultureInfo, BindingGroup) Validate(Object, CultureInfo, BindingGroup) Validate(Object, CultureInfo, BindingGroup)

Führt Validierungsprüfungen für einen Wert aus.Performs validation checks on a value.

Validate(Object, CultureInfo) Validate(Object, CultureInfo) Validate(Object, CultureInfo)

Führt beim Überschreiben in einer abgeleiteten Klasse Validierungsprüfungen für einen Wert durch.When overridden in a derived class, performs validation checks on a value.

public:
 abstract System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo);
public abstract System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo);
abstract member Validate : obj * System.Globalization.CultureInfo -> System.Windows.Controls.ValidationResult

Parameter

value
Object Object Object

Der Wert aus dem Bindungsziel, der überprüft werden soll.The value from the binding target to check.

cultureInfo
CultureInfo CultureInfo CultureInfo

Die in dieser Regel zu verwendende Kultur.The culture to use in this rule.

Gibt zurück

Beispiele

Im folgenden Beispiel wird gezeigt, wie eine Validierungs Regel implementiert wird.The following example shows how to implement a validation rule. Im folgenden Beispiel ist der Eingabe Wert ungültig, wenn er nicht numerische Zeichen enthält oder außerhalb der unteren und oberen Begrenzungen liegt.In the following example, the input value is invalid if it contains non-numeric characters or if it is outside the lower and upper bounds. Wenn der Eingabe Wert ungültig ist, wird ErrorContent die-Eigenschaft auf die entsprechende Fehlermeldung festgelegt IsValid , und die- falseEigenschaft ist auf festgelegt.If the input value is invalid, the ErrorContent property is set to the appropriate error message and the IsValid property is set to false.

Das vollständige Beispiel finden Sie unter Vorgehensweise: Implementieren der BindungsValidierung.For the complete example, see How to: Implement Binding Validation.

public class AgeRangeRule : ValidationRule
{
    public int Min { get; set; }
    public int Max { get; set; }
    
    public AgeRangeRule()
    {
    }

    public override ValidationResult Validate(object value, CultureInfo cultureInfo)
    {
        int age = 0;

        try
        {
            if (((string)value).Length > 0)
                age = Int32.Parse((String)value);
        }
        catch (Exception e)
        {
            return new ValidationResult(false, $"Illegal characters or {e.Message}");
        }

        if ((age < Min) || (age > Max))
        {
            return new ValidationResult(false,
              $"Please enter an age in the range: {Min}-{Max}.");
        }
        return ValidationResult.ValidResult;
    }
}

Hinweise

Sie müssen diese Methode implementieren, wenn Sie eine Unterklasse der ValidationRule -Klasse erstellen, um eine benutzerdefinierte Validierungs Regel zu erstellen.You must implement this method when you create a subclass of the ValidationRule class in order to create a custom validation rule.

Jedes Mal, wenn die Daten Bindungs-Engine einen Wert von der Bindungs Ziel-Eigenschaft (von Benutzereingaben) an die Bindungs Quell Eigenschaft (die zugrunde liegenden Daten) überträgt ValidationRules , wird überprüft, ob für diese Bindung definiert ist.Each time the data binding engine transfers a value from the binding target property (from user input) to the binding source property (the underlying data), it checks whether any ValidationRules are defined for that binding. Wenn ValidationRules für die Bindung definiert ist, ruft die-Engine Validate die-Methode ValidationRule auf jeder-Methode auf, bis einer von Ihnen einen Fehler findet oder alle davon bestanden haben.If ValidationRules are defined for the binding, the engine calls the Validate method on each ValidationRule until one of them finds an error or until all of them pass.

Ausführliche Informationen zur Datenvalidierung finden Sie unter Übersicht über die Datenbindung.For detailed information about data validation, see Data Binding Overview.

Siehe auch

Validate(Object, CultureInfo, BindingExpressionBase) Validate(Object, CultureInfo, BindingExpressionBase) Validate(Object, CultureInfo, BindingExpressionBase)

Führt Validierungsprüfungen für einen Wert aus.Performs validation checks on a value.

public:
 virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingExpressionBase ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingExpressionBase owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingExpressionBase -> System.Windows.Controls.ValidationResult

Parameter

value
Object Object Object

Der Wert aus dem Bindungsziel, der überprüft werden soll.The value from the binding target to check.

cultureInfo
CultureInfo CultureInfo CultureInfo

Die in dieser Regel zu verwendende Kultur.The culture to use in this rule.

owner
BindingExpressionBase BindingExpressionBase BindingExpressionBase

Der Bindungsausdruck, der die Validierungsregel benutzt.The binding expression that uses the validation rule.

Gibt zurück

Validate(Object, CultureInfo, BindingGroup) Validate(Object, CultureInfo, BindingGroup) Validate(Object, CultureInfo, BindingGroup)

Führt Validierungsprüfungen für einen Wert aus.Performs validation checks on a value.

public:
 virtual System::Windows::Controls::ValidationResult ^ Validate(System::Object ^ value, System::Globalization::CultureInfo ^ cultureInfo, System::Windows::Data::BindingGroup ^ owner);
public virtual System.Windows.Controls.ValidationResult Validate (object value, System.Globalization.CultureInfo cultureInfo, System.Windows.Data.BindingGroup owner);
abstract member Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult
override this.Validate : obj * System.Globalization.CultureInfo * System.Windows.Data.BindingGroup -> System.Windows.Controls.ValidationResult

Parameter

value
Object Object Object

Der Wert aus dem Bindungsziel, der überprüft werden soll.The value from the binding target to check.

cultureInfo
CultureInfo CultureInfo CultureInfo

Die in dieser Regel zu verwendende Kultur.The culture to use in this rule.

owner
BindingGroup BindingGroup BindingGroup

Die Bindungsgruppe, die die Validierungsregel benutzt.The binding group that uses the validation rule.

Gibt zurück

Gilt für: