Compartilhar via


ValidationError Classe

Definição

Representa um erro de validação que é criado pelo mecanismo de associação quando um ValidationRule relata um erro de validação ou por meio do método MarkInvalid(BindingExpressionBase, ValidationError) explicitamente.

public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
Herança
ValidationError

Exemplos

O exemplo a seguir mostra um gatilho de estilo que cria um ToolTip que relata uma mensagem de erro de validação. A Validation.Errors propriedade anexada retorna uma coleção de ValidationError objetos no elemento associado.

<Style x:Key="textStyleTextBox" TargetType="TextBox">
  <Setter Property="Foreground" Value="#333333" />
  <Setter Property="MaxLength" Value="40" />
  <Setter Property="Width" Value="392" />
  <Style.Triggers>
    <Trigger Property="Validation.HasError" Value="true">
      <Setter Property="ToolTip"
        Value="{Binding RelativeSource={RelativeSource Self},
                        Path=(Validation.Errors)[0].ErrorContent}"/>
    </Trigger>
  </Style.Triggers>
</Style>

Comentários

O modelo de associação de dados do WPF permite associar regras de validação ao seu Binding objeto. A validação ocorre durante a transferência de valor de destino para fonte antes que o conversor seja chamado. O conteúdo a seguir descreve o processo de validação.

  1. Quando um valor está sendo transferido da propriedade de destino para a propriedade de origem, o mecanismo de associação de dados primeiro remove qualquer ValidationError um que possa ter sido adicionado à Validation.Errors propriedade anexada do elemento associado. Em seguida, ele verifica se alguma regra de validação personalizada é definida para esse Binding, nesse caso, ele chama o Validate método em cada ValidationRule até que uma delas falhe ou até que todas elas passem.

  2. Depois que há uma regra personalizada que não passa, o mecanismo de associação cria um ValidationError objeto e o Validation.Errors adiciona à coleção do elemento associado. Quando Validation.Errors não estiver vazio, a Validation.HasError propriedade anexada do elemento será definida como true. Além disso, se a propriedade NotifyOnValidationError do Binding estiver definida como true, o mecanismo de associação gerará o evento anexado Validation.Error no elemento.

  3. Se todas as regras forem aprovadas, o mecanismo de associação chamará o conversor, se houver uma.

  4. Se o conversor for aprovado, o mecanismo de associação chamará o setter da propriedade de origem.

  5. Se a associação tiver uma ExceptionValidationRule associada a ela e uma exceção for gerada durante a etapa 3 ou 4, o mecanismo de associação verificará se há um UpdateSourceExceptionFilter. Você pode usar o retorno de chamada UpdateSourceExceptionFilter para fornecer um manipulador personalizado para lidar com exceções. Se um UpdateSourceExceptionFilter não for especificado no , o Bindingmecanismo de associação criará um ValidationError com a exceção e o Validation.Errors adicionará à coleção do elemento associado.

Uma transferência de valor válida em qualquer direção (destino para origem ou origem para destino) limpará a Validation.Errors propriedade anexada.

Construtores

ValidationError(ValidationRule, Object, Object, Exception)

Inicializa uma nova instância da classe ValidationError com os parâmetros especificados.

ValidationError(ValidationRule, Object)

Inicializa uma nova instância da classe ValidationError com os parâmetros especificados.

Propriedades

BindingInError

Obtém o objeto BindingExpression ou MultiBindingExpression deste ValidationError. O objeto é marcado como inválido explicitamente ou tem uma regra de validação com falha.

ErrorContent

Obtém ou define um objeto que fornece contexto adicional para este ValidationError, como uma cadeia de caracteres que descreve o erro.

Exception

Obtém ou define o objeto Exception que foi a causa deste ValidationError, se o erro foi o resultado de uma exceção.

RuleInError

Obtém ou define o objeto ValidationRule que foi a causa deste ValidationError, se o erro foi o resultado de uma regra de validação.

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)

Aplica-se a

Confira também