Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

BaseFieldControl.IsValid - Propriété

Obtient ou définit une valeur qui indique si la valeur actuelle de la propriété Value est valide.

Espace de noms :  Microsoft.SharePoint.WebControls
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

public bool IsValid { get; set; }

Valeur de propriété

Type : System.Boolean
true si Value est valide ; dans le cas contraire, false. La valeur par défaut est true.

Implémentations

IValidator.IsValid

Value est la valeur du contrôle dans l'interface utilisateur, et non la valeur sous-jacente (c'est-à-dire ItemFieldValue) de l'objet SPField() qui a l' BaseFieldControl en tant que sa propriété FieldRenderingControl . Utilisez IsValid uniquement lorsque vous avez besoin de la validation de la valeur de l'interface utilisateur. Pour valider la ItemFieldValue, utilisez l' GetValidatedString().

Voici un exemple d'une substitution de la méthode Validate qui définit IsValid. Il vérifie si le contrôle est complet, auquel cas peu importe si le champ n'est pas valide car il ne peut pas être modifié quand même. La méthode vérifie également si la propriété Value est déjà connue comme étant non valides en vérifiant la propriété IsValid . Si une de ces vérifications est true, il ne fait rien. Si aucun n'a la valeur true, la méthode appelle la base Validate qui sera la valeur IsValidfalse s'il détecte un problème avec la propriété Value et définissez un approprié ErrorMessage. (La méthode BaseFieldControl.Validate ne fait rien, donc si la classe dont la méthode Validate est en cours de substitution est dérivée directement de BaseFieldControl, puis l'appel à la méthode Validate de base peut être omise.) Enfin, la méthode vérifie la valeur de Required et applique cette valeur.

public override void Validate()
{
    if (ControlMode == SPControlMode.Display || !IsValid)
    {
        return;
    }

    base.Validate();

    if (Field.Required && 
        (Value == null || Value.ToString().Length == 0))
    {
        this.ErrorMessage = Field.Title + " must have a value."
        IsValid = false;
        return;
    }
}
Afficher: