Freigeben über


ValidationRule Klasse

Definition

Bietet eine Möglichkeit, eine benutzerdefinierte Regel zu erstellen, um die Gültigkeit von Benutzereingaben zu überprüfen.

public ref class ValidationRule abstract
public abstract class ValidationRule
type ValidationRule = class
Public MustInherit Class ValidationRule
Vererbung
ValidationRule
Abgeleitet

Beispiele

Im folgenden Beispiel wird gezeigt, wie eine Überprüfungsregel implementiert wird. Der Eingabewert ist ungültig, wenn sie nicht numerische Zeichen enthält oder außerhalb der unteren und oberen Grenzen liegt. Wenn der Wert des zurückgegebenen ValidationResult Objekts ungültig ist, wird die ErrorContent Eigenschaft auf die entsprechende Fehlermeldung festgelegt und die IsValid Eigenschaft auf ".false

Das vollständige Beispiel finden Sie unter How to: Implementieren der Bindungsüberprüfung.

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

Wenn Sie das WPF-Datenbindungsmodell verwenden, können Sie Dem Bindungsobjekt zuordnen ValidationRules . Um benutzerdefinierte Regeln zu erstellen, erstellen Sie eine Unterklasse dieser Klasse und implementieren Sie die Validate Methode. Verwenden Sie optional die integrierten ExceptionValidationRuleAusnahmen, die Während der Quellupdates ausgelöst werden, oder die DataErrorValidationRule, die durch die IDataErrorInfo Implementierung des Quellobjekts ausgelöste Fehler überprüft.

Das Bindungsmodul überprüft jedes ValidationRule , das einer Bindung zugeordnet ist, jedes Mal, wenn er einen Eingabewert übergibt, der der Bindungswert der Zieleigenschaft ist, an die Bindungsquelleeigenschaft.

Ausführliche Informationen zur Datenüberprüfung finden Sie unter "Übersicht über die Datenbindung".

Informationen zum Überprüfen von vom Benutzer bereitgestellten Daten in einem Dialogfeld finden Sie unter Übersicht über Dialogfelder.

Konstruktoren

ValidationRule()

Initialisiert eine neue Instanz der ValidationRule-Klasse.

ValidationRule(ValidationStep, Boolean)

Initialisiert eine neue Instanz der ValidationRule-Klasse mit dem angegebenen Validierungsschritt und einem Wert, der angibt, ob die Validierungsregel beim Aktualisieren des Ziels ausgeführt wird.

Eigenschaften

ValidatesOnTargetUpdated

Ruft einen Wert ab, der angibt, ob die Validierungsregel ausgeführt wird, wenn das Ziel der Binding aktualisiert wird, oder legt diesen Wert fest.

ValidationStep

Ruft ab oder legt fest, wann die Validierungsregel ausgeführt wird.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
Validate(Object, CultureInfo)

Führt beim Überschreiben in einer abgeleiteten Klasse Validierungsüberprüfungen für einen Wert aus.

Validate(Object, CultureInfo, BindingExpressionBase)

Führt Validierungsprüfungen für einen Wert aus.

Validate(Object, CultureInfo, BindingGroup)

Führt Validierungsprüfungen für einen Wert aus.

Gilt für

Siehe auch