ValidationError ValidationError ValidationError ValidationError Class

Définition

Représente une erreur de validation créée par le moteur de liaison lorsqu'une ValidationRule signale une erreur de validation ou explicitement par la méthode MarkInvalid(BindingExpressionBase, ValidationError).Represents a validation error that is created either by the binding engine when a ValidationRule reports a validation error, or through the MarkInvalid(BindingExpressionBase, ValidationError) method explicitly.

public ref class ValidationError
public class ValidationError
type ValidationError = class
Public Class ValidationError
Héritage
ValidationErrorValidationErrorValidationErrorValidationError

Exemples

L’exemple suivant montre un déclencheur de style qui ToolTip crée un qui signale un message d’erreur de validation.The following example shows a style trigger that creates a ToolTip that reports a validation error message. La Validation.Errors propriété jointe retourne une collection ValidationError d’objets sur l’élément lié.The Validation.Errors attached property returns a collection of ValidationError objects on the bound element.

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

Remarques

Le WPFWPF modèle de liaison de données vous permet d’associer des règles Binding de validation à votre objet.The WPFWPF data binding model enables you to associate validation rules with your Binding object. La validation se produit lors du transfert de la valeur cible vers la source avant l’appel du convertisseur.Validation occurs during target-to-source value transfer before the converter is called. Les éléments suivants décrivent le processus de validation.The following describes the validation process.

  1. Lorsqu’une valeur est transférée de la propriété cible à la propriété source, le moteur de liaison de données supprime ValidationError tout d’abord tous ceux qui ont Validation.Errors pu être ajoutés à la propriété jointe de l’élément lié.When a value is being transferred from the target property to the source property, the data binding engine first removes any ValidationError that might have been added to the Validation.Errors attached property of the bound element. Il vérifie ensuite si des règles de validation personnalisées sont définies Bindingpour ce. dans ce cas, Validate il appelle la ValidationRule méthode sur chacune d’elles jusqu’à ce que l’une d’elles échoue ou jusqu’à ce qu’elles soient toutes passées.It then checks whether any custom validation rules are defined for that Binding, in which case it calls the Validate method on each ValidationRule until one of them fails or until all of them pass.

  2. Une fois qu’une règle personnalisée ne réussit pas, le moteur de liaison crée ValidationError un objet et l’ajoute à Validation.Errors la collection de l’élément lié.Once there is a custom rule that does not pass, the binding engine creates a ValidationError object and adds it to the Validation.Errors collection of the bound element. Lorsque Validation.Errors n’est pas vide, Validation.HasError la propriété jointe de truel’élément a la valeur.When Validation.Errors is not empty, the Validation.HasError attached property of the element is set to true. En outre, si NotifyOnValidationError la propriété Binding du a la valeur true, le moteur de liaison déclenche l' Validation.Error événement attaché sur l’élément.Also, if the NotifyOnValidationError property of the Binding is set to true, then the binding engine raises the Validation.Error attached event on the element.

  3. Si toutes les règles sont satisfaites, le moteur de liaison appelle alors le convertisseur, le cas échéant.If all the rules pass, the binding engine then calls the converter, if one exists.

  4. Si le convertisseur réussit, le moteur de liaison appelle la méthode setter de la propriété source.If the converter passes, the binding engine calls the setter of the source property.

  5. Si une liaison est ExceptionValidationRule associée à la liaison et qu’une exception est levée au cours de l’étape 3 ou 4, le moteur de liaison vérifie s’il existe un. UpdateSourceExceptionFilterIf the binding has an ExceptionValidationRule associated with it and an exception is thrown during step 3 or 4, the binding engine checks to see if there is an UpdateSourceExceptionFilter. Vous pouvez utiliser le UpdateSourceExceptionFilter rappel pour fournir un gestionnaire personnalisé pour la gestion des exceptions.You can use the UpdateSourceExceptionFilter callback to provide a custom handler for handling exceptions. Si un UpdateSourceExceptionFilter n’est pas spécifié Bindingsur, le moteur de liaison crée ValidationError un avec l’exception et l’ajoute à Validation.Errors la collection de l’élément lié.If an UpdateSourceExceptionFilter is not specified on the Binding, the binding engine creates a ValidationError with the exception and adds it to the Validation.Errors collection of the bound element.

Un transfert de valeur valide dans l’une ou l’autre direction (cible vers source ou source vers Validation.Errors cible) efface la propriété jointe.A valid value transfer in either direction (target to source or source to target) will clear the Validation.Errors attached property.

Constructeurs

ValidationError(ValidationRule, Object) ValidationError(ValidationRule, Object) ValidationError(ValidationRule, Object) ValidationError(ValidationRule, Object)

Initialise une nouvelle instance de la classe ValidationError avec les paramètres spécifiés.Initializes a new instance of the ValidationError class with the specified parameters.

ValidationError(ValidationRule, Object, Object, Exception) ValidationError(ValidationRule, Object, Object, Exception) ValidationError(ValidationRule, Object, Object, Exception) ValidationError(ValidationRule, Object, Object, Exception)

Initialise une nouvelle instance de la classe ValidationError avec les paramètres spécifiés.Initializes a new instance of the ValidationError class with the specified parameters.

Propriétés

BindingInError BindingInError BindingInError BindingInError

Obtient l'objet BindingExpression ou MultiBindingExpression de ValidationError.Gets the BindingExpression or MultiBindingExpression object of this ValidationError. L'objet est explicitement marqué comme non valide ou est associé à une règle de validation ayant échoué.The object is either marked invalid explicitly or has a failed validation rule.

ErrorContent ErrorContent ErrorContent ErrorContent

Obtient ou définit un objet qui fournit un contexte supplémentaire pour ce ValidationError, par exemple une chaîne décrivant l’erreur.Gets or sets an object that provides additional context for this ValidationError, such as a string describing the error.

Exception Exception Exception Exception

Obtient ou définit l'objet Exception qui était la cause de ValidationError, si l'erreur est le résultat d'une exception.Gets or sets the Exception object that was the cause of this ValidationError, if the error is the result of an exception.

RuleInError RuleInError RuleInError RuleInError

Obtient ou définit l'objet ValidationRule qui était la cause de ValidationError, si l'erreur est le résultat d'une règle de validation.Gets or sets the ValidationRule object that was the cause of this ValidationError, if the error is the result of a validation rule.

Méthodes

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fait office de fonction de hachage par défaut.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtient le Type de l'instance actuelle.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crée une copie superficielle de l'objet Object actuel.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Retourne une chaîne qui représente l'objet actuel.Returns a string that represents the current object.

(Inherited from Object)

S’applique à

Voir aussi