ValidationRule.Validate Método

Definição

Realiza verificações de validação sobre um valor.

Sobrecargas

Name Description
Validate(Object, CultureInfo)

Quando sobrescrito numa classe derivada, realiza verificações de validação sobre um valor.

Validate(Object, CultureInfo, BindingExpressionBase)

Realiza verificações de validação sobre um valor.

Validate(Object, CultureInfo, BindingGroup)

Realiza verificações de validação sobre um valor.

Validate(Object, CultureInfo)

Quando sobrescrito numa classe derivada, realiza verificações de validação sobre um valor.

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

Parâmetros

value
Object

O valor do alvo de ligação a verificar.

cultureInfo
CultureInfo

A cultura a usar nesta regra.

Devoluções

Um objeto ValidationResult.

Exemplos

O exemplo seguinte mostra como implementar uma regra de validação. No exemplo seguinte, o valor de entrada é inválido se contiver caracteres não numéricos ou se estiver fora dos limites inferior e superior. Se o valor de entrada for inválido, a ErrorContent propriedade é definida para a mensagem de erro apropriada e a IsValid propriedade para false.

Para o exemplo completo, veja Como: Implementar a Validação de Vinculação.

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

Observações

Deve implementar este método ao criar uma subclasse da ValidationRule classe para criar uma regra de validação personalizada.

Cada vez que o motor de ligação de dados transfere um valor da propriedade de destino de ligação (da entrada do utilizador) para a propriedade de origem de ligação (os dados subjacentes), verifica se algum ValidationRules está definido para essa ligação. Se ValidationRules forem definidos para a ligação, o motor chama o Validate método em cada ValidationRule um até que um deles encontre um erro ou até que todos passem.

Para informações detalhadas sobre validação de dados, consulte Visão Geral da Ligação de Dados.

Ver também

Aplica-se a

Validate(Object, CultureInfo, BindingExpressionBase)

Realiza verificações de validação sobre um valor.

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

Parâmetros

value
Object

O valor do alvo de ligação a verificar.

cultureInfo
CultureInfo

A cultura a usar nesta regra.

owner
BindingExpressionBase

A expressão de ligação que usa a regra de validação.

Devoluções

Um objeto ValidationResult.

Aplica-se a

Validate(Object, CultureInfo, BindingGroup)

Realiza verificações de validação sobre um valor.

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

Parâmetros

value
Object

O valor do alvo de ligação a verificar.

cultureInfo
CultureInfo

A cultura a usar nesta regra.

owner
BindingGroup

O grupo de ligação que usa a regra de validação.

Devoluções

Um objeto ValidationResult.

Aplica-se a