Freigeben über


ValidationRule Klasse

Definition

Bietet eine Möglichkeit zum Erstellen einer benutzerdefinierten Regel, um die Gültigkeit der Benutzereingabe zu überprüfen.

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

Beispiele

Das folgende Beispiel zeigt, wie eine Gültigkeitsprüfungsregel implementiert wird. Der Eingabewert ist ungültig, wenn er nicht numerische Zeichen enthält oder sich außerhalb der unteren und oberen Begrenzungen befindet. Wenn der Wert der zurückgegebenen ValidationResult Eigenschaft ungültig ist, wird die ErrorContent Eigenschaft auf die entsprechende Fehlermeldung festgelegt, und die IsValid Eigenschaft wird auf false.

Das vollständige Beispiel finden Sie unter 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

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 integrierte ExceptionValidationRule, die Ausnahmen abfangen, die während Der Quellaktualisierungen ausgelöst werden, oder die , die DataErrorValidationRuleauf Fehler überprüft, die durch die IDataErrorInfo Implementierung des Quellobjekts ausgelöst werden.

Das Bindungsmodul überprüft jedes ValidationRule , das einer Bindung zugeordnet ist, jedes Mal, wenn er einen Eingabewert, der der Bindungszieleigenschaftswert ist, an die Bindungsquelleigenschaft überträgt.

Ausführliche Informationen zur Datenüberprüfung finden Sie unter Data Binding Overview.

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

Konstruktoren

Name Beschreibung
ValidationRule()

Initialisiert eine neue Instanz der ValidationRule-Klasse.

ValidationRule(ValidationStep, Boolean)

Initialisiert eine neue Instanz der ValidationRule Klasse mit dem angegebenen Überprüfungsschritt und einem Wert, der angibt, ob die Gültigkeitsprüfungsregel ausgeführt wird, wenn das Ziel aktualisiert wird.

Eigenschaften

Name Beschreibung
ValidatesOnTargetUpdated

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob die Gültigkeitsprüfungsregel ausgeführt wird, wenn das Ziel der Binding Aktualisierung erfolgt.

ValidationStep

Ruft ab oder legt fest, wann die Gültigkeitsprüfungsregel ausgeführt wird.

Methoden

Name Beschreibung
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
ToString()

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

(Geerbt von Object)
Validate(Object, CultureInfo, BindingExpressionBase)

Führt Überprüfungen für einen Wert aus.

Validate(Object, CultureInfo, BindingGroup)

Führt Überprüfungen für einen Wert aus.

Validate(Object, CultureInfo)

Wenn sie in einer abgeleiteten Klasse außer Kraft gesetzt wird, werden Überprüfungen für einen Wert ausgeführt.

Gilt für:

Weitere Informationen