ValidationRule.Validate Méthode

Définition

Exécute des contrôles de validation sur une valeur.

Surcharges

Validate(Object, CultureInfo)

En cas de remplacement dans une classe dérivée, effectue des contrôles de validation sur une valeur.

Validate(Object, CultureInfo, BindingExpressionBase)

Exécute des contrôles de validation sur une valeur.

Validate(Object, CultureInfo, BindingGroup)

Exécute des contrôles de validation sur une valeur.

Validate(Object, CultureInfo)

En cas de remplacement dans une classe dérivée, effectue des contrôles de validation sur une valeur.

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
Public MustOverride Function Validate (value As Object, cultureInfo As CultureInfo) As ValidationResult

Paramètres

value
Object

La valeur de la cible de liaison à vérifier.

cultureInfo
CultureInfo

Culture à utiliser dans cette règle.

Retours

Objet ValidationResult.

Exemples

L’exemple suivant montre comment implémenter une règle de validation. Dans l’exemple suivant, la valeur d’entrée n’est pas valide si elle contient des caractères non numériques ou si elle se trouve en dehors des limites inférieure et supérieure. Si la valeur d’entrée n’est pas valide, la ErrorContent propriété est définie sur le message d’erreur approprié et la propriété a la IsValidfalsevaleur .

Pour obtenir l’exemple complet, consultez Guide pratique pour implémenter la validation de liaison.

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

Remarques

Vous devez implémenter cette méthode lorsque vous créez une sous-classe de la ValidationRule classe afin de créer une règle de validation personnalisée.

Chaque fois que le moteur de liaison de données transfère une valeur de la propriété cible de liaison (à partir de l’entrée utilisateur) vers la propriété source de liaison (les données sous-jacentes), il vérifie si des ValidationRules valeurs sont définies pour cette liaison. Si ValidationRules sont définis pour la liaison, le moteur appelle la Validate méthode sur chacun ValidationRule d’eux jusqu’à ce que l’un d’entre eux trouve une erreur ou jusqu’à ce que tous les passent.

Pour plus d’informations sur la validation des données, consultez Vue d’ensemble de la liaison de données.

Voir aussi

S’applique à

Validate(Object, CultureInfo, BindingExpressionBase)

Exécute des contrôles de validation sur une valeur.

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
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingExpressionBase) As ValidationResult

Paramètres

value
Object

La valeur de la cible de liaison à vérifier.

cultureInfo
CultureInfo

Culture à utiliser dans cette règle.

owner
BindingExpressionBase

Expression de liaison qui utilise la règle de validation.

Retours

Objet ValidationResult.

S’applique à

Validate(Object, CultureInfo, BindingGroup)

Exécute des contrôles de validation sur une valeur.

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
Public Overridable Function Validate (value As Object, cultureInfo As CultureInfo, owner As BindingGroup) As ValidationResult

Paramètres

value
Object

La valeur de la cible de liaison à vérifier.

cultureInfo
CultureInfo

Culture à utiliser dans cette règle.

owner
BindingGroup

Groupe de liaison qui utilise la règle de validation.

Retours

Objet ValidationResult.

S’applique à