Compartilhar via


ValidationRule Classe

Definição

Fornece uma maneira de criar uma regra personalizada, para verificar a validade da entrada do usuário.

public ref class ValidationRule abstract
public abstract class ValidationRule
type ValidationRule = class
Public MustInherit Class ValidationRule
Herança
ValidationRule
Derivado

Exemplos

O exemplo a seguir mostra como implementar uma regra de validação. 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 do retornado ValidationResult for inválido, a ErrorContent propriedade será definida como a mensagem de erro apropriada e a IsValid propriedade será definida como false.

Para obter o exemplo completo, consulte Como implementar a validação de associaçã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;
    }
}

Comentários

Ao usar o modelo de associação de dados do WPF, você pode associar ValidationRules ao objeto de associação. Para criar regras personalizadas, faça uma subclasse dessa classe e implemente o Validate método. Opcionalmente, use o interno ExceptionValidationRule, que captura exceções que são lançadas durante as atualizações de origem ou a DataErrorValidationRule, que verifica se há erros gerados pela implementação do objeto de origem IDataErrorInfo .

O mecanismo de associação verifica cada ValidationRule um associado a uma associação sempre que transfere um valor de entrada, que é o valor da propriedade de destino de associação, para a propriedade de origem de associação.

Para obter informações detalhadas sobre a validação de dados, consulte Visão geral da Associação de Dados.

Para obter informações sobre como validar dados fornecidos pelo usuário em uma caixa de diálogo, consulte Visão geral das caixas de diálogo.

Construtores

ValidationRule()

Inicializa uma nova instância da classe ValidationRule.

ValidationRule(ValidationStep, Boolean)

Inicializa uma nova instância da classe ValidationRule com a etapa de validação especificada e um valor que indica se a regra de validação é executada quando o destino é atualizado.

Propriedades

ValidatesOnTargetUpdated

Obtém ou define um valor que indica se a regra de validação é executada quando o destino do Binding é atualizado.

ValidationStep

Obtém ou define quando a regra de validação é executada.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
Validate(Object, CultureInfo)

Quando substituído em uma classe derivada, executa verificações de validação em um valor.

Validate(Object, CultureInfo, BindingExpressionBase)

Executa as verificações de validação em um valor.

Validate(Object, CultureInfo, BindingGroup)

Executa as verificações de validação em um valor.

Aplica-se a

Confira também