Udostępnij za pośrednictwem


ValidationRule Klasa

Definicja

Zapewnia sposób tworzenia reguły niestandardowej w celu sprawdzenia poprawności danych wejściowych użytkownika.

public ref class ValidationRule abstract
public abstract class ValidationRule
type ValidationRule = class
Public MustInherit Class ValidationRule
Dziedziczenie
ValidationRule
Pochodne

Przykłady

W poniższym przykładzie pokazano, jak zaimplementować regułę weryfikacji. Wartość wejściowa jest nieprawidłowa, jeśli zawiera znaki nieliczbowe lub znajduje się poza dolną i górną granicą. Jeśli zwrócona wartość ValidationResult jest nieprawidłowa, ErrorContent właściwość jest ustawiona na odpowiedni komunikat o błędzie, a właściwość jest ustawiona IsValid na falsewartość .

Aby zapoznać się z kompletnym przykładem, zobacz Instrukcje: implementowanie weryfikacji powiązań.

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;
    }
}

Uwagi

W przypadku korzystania z modelu powiązania danych WPF można skojarzyć ValidationRules z obiektem powiązania. Aby utworzyć reguły niestandardowe, utwórz podklasę tej klasy i zaimplementuj metodę Validate . Opcjonalnie należy użyć wbudowanego ExceptionValidationRuleelementu , który przechwytuje wyjątki zgłaszane podczas aktualizacji źródłowych lub DataErrorValidationRule, który sprawdza błędy zgłaszane przez IDataErrorInfo implementację obiektu źródłowego.

Aparat powiązania sprawdza każdy ValidationRule skojarzony z powiązaniem za każdym razem, gdy przesyła wartość wejściową, czyli wartość właściwości docelowej powiązania, do właściwości źródłowej powiązania.

Aby uzyskać szczegółowe informacje na temat walidacji danych, zobacz Omówienie powiązania danych.

Aby uzyskać informacje na temat weryfikowania danych dostarczonych przez użytkownika w oknie dialogowym, zobacz Omówienie okien dialogowych.

Konstruktory

ValidationRule()

Inicjuje nowe wystąpienie klasy ValidationRule.

ValidationRule(ValidationStep, Boolean)

Inicjuje nowe wystąpienie ValidationRule klasy z określonym krokiem weryfikacji i wartością wskazującą, czy reguła walidacji jest uruchamiana po zaktualizowaniu obiektu docelowego.

Właściwości

ValidatesOnTargetUpdated

Pobiera lub ustawia wartość wskazującą, czy reguła walidacji jest uruchamiana po zaktualizowaniu Binding obiektu docelowego.

ValidationStep

Pobiera lub ustawia, gdy zostanie uruchomiona reguła walidacji.

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
Validate(Object, CultureInfo)

Po przesłonięciu w klasie pochodnej przeprowadza sprawdzanie poprawności wartości.

Validate(Object, CultureInfo, BindingExpressionBase)

Przeprowadza sprawdzanie poprawności wartości.

Validate(Object, CultureInfo, BindingGroup)

Przeprowadza sprawdzanie poprawności wartości.

Dotyczy

Zobacz też