ValidationRule.Validate Método

Definição

Executa as verificações de validação em um valor.Performs validation checks on a value.

Sobrecargas

Validate(Object, CultureInfo)

Quando substituído em uma classe derivada, executa verificações de validação em um valor.When overridden in a derived class, performs validation checks on a value.

Validate(Object, CultureInfo, BindingExpressionBase)

Executa as verificações de validação em um valor.Performs validation checks on a value.

Validate(Object, CultureInfo, BindingGroup)

Executa as verificações de validação em um valor.Performs validation checks on a value.

Validate(Object, CultureInfo)

Quando substituído em uma classe derivada, executa verificações de validação em um valor.When overridden in a derived class, performs validation checks on a value.

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

Parâmetros

value
Object

O valor do destino da associação a ser verificado.The value from the binding target to check.

cultureInfo
CultureInfo

A cultura a ser usada nesta regra.The culture to use in this rule.

Retornos

Exemplos

O exemplo a seguir mostra como implementar uma regra de validação.The following example shows how to implement a validation rule. No exemplo a seguir, o valor de entrada é inválido se ele contiver caracteres não numéricos ou se estiver fora dos limites inferior e superior.In the following example, the input value is invalid if it contains non-numeric characters or if it is outside the lower and upper bounds. Se o valor de entrada for inválido, a propriedade ErrorContent será definida como a mensagem de erro apropriada e a propriedade IsValid será definida como false.If the input value is invalid, the ErrorContent property is set to the appropriate error message and the IsValid property is set to false.

Para obter o exemplo completo, consulte como implementar a validação de associação.For the complete example, see 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;
    }
}

Comentários

Você deve implementar esse método ao criar uma subclasse da classe ValidationRule para criar uma regra de validação personalizada.You must implement this method when you create a subclass of the ValidationRule class in order to create a custom validation rule.

Cada vez que o mecanismo de vinculação de dados transfere um valor da propriedade de destino de associação (da entrada do usuário) para a propriedade de origem da Associação (os dados subjacentes), ele verifica se algum ValidationRules está definido para essa associação.Each time the data binding engine transfers a value from the binding target property (from user input) to the binding source property (the underlying data), it checks whether any ValidationRules are defined for that binding. Se ValidationRules forem definidas para a associação, o mecanismo chamará o método Validate em cada ValidationRule até que um deles Localize um erro ou até que todos eles passem.If ValidationRules are defined for the binding, the engine calls the Validate method on each ValidationRule until one of them finds an error or until all of them pass.

Para obter informações detalhadas sobre a validação de dados, consulte visão geral da ligação de dados.For detailed information about data validation, see Data Binding Overview.

Veja também

Validate(Object, CultureInfo, BindingExpressionBase)

Executa as verificações de validação em um valor.Performs validation checks on a value.

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

Parâmetros

value
Object

O valor do destino da associação a ser verificado.The value from the binding target to check.

cultureInfo
CultureInfo

A cultura a ser usada nesta regra.The culture to use in this rule.

owner
BindingExpressionBase

A expressão de associação que usa a regra de validação.The binding expression that uses the validation rule.

Retornos

Validate(Object, CultureInfo, BindingGroup)

Executa as verificações de validação em um valor.Performs validation checks on a value.

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

Parâmetros

value
Object

O valor do destino da associação a ser verificado.The value from the binding target to check.

cultureInfo
CultureInfo

A cultura a ser usada nesta regra.The culture to use in this rule.

owner
BindingGroup

O grupo de associação que usa a regra de validação.The binding group that uses the validation rule.

Retornos

Aplica-se a