ValidationRule Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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 false
wartość .
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. |