Partager via


ValidateValueCallback Délégué

Définition

Représente une méthode utilisée comme rappel qui valide la valeur effective d’une propriété de dépendance.

public delegate bool ValidateValueCallback(System::Object ^ value);
public delegate bool ValidateValueCallback(object value);
type ValidateValueCallback = delegate of obj -> bool
Public Delegate Function ValidateValueCallback(value As Object) As Boolean 

Paramètres

value
Object

Valeur à valider.

Valeur renvoyée

Boolean

true si la valeur a été validée ; false si la valeur soumise n’était pas valide.

Exemples

L’exemple suivant inclut une implémentation de ce rappel pour valider une plage de valeurs pour une propriété de dépendance personnalisée. Dans ce cas, la valeur de propriété attend une énumération, et la validation garantit que la valeur fournie est évaluée à un membre de cette énumération.

private static bool ShirtValidateCallback(object value)
{
    ShirtTypes sh = (ShirtTypes) value;
    return (sh==ShirtTypes.None || sh == ShirtTypes.Bowling || sh == ShirtTypes.Dress || sh == ShirtTypes.Rugby || sh == ShirtTypes.Tee);
}
Private Shared Function ShirtValidateCallback(ByVal value As Object) As Boolean
    Dim sh As ShirtTypes = CType(value, ShirtTypes)
    Return (sh=ShirtTypes.None OrElse sh = ShirtTypes.Bowling OrElse sh = ShirtTypes.Dress OrElse sh = ShirtTypes.Rugby OrElse sh = ShirtTypes.Tee)

End Function

Remarques

Les rappels basés sur ce délégué sont utilisés par certaines signatures et DependencyProperty.Register méthodes associées, telles que RegisterAttached des équivalents en lecture seule. Vous devez utiliser des signatures qui prennent le validateValueCallback paramètre si vous souhaitez une validation spécifique de la valeur de propriété chaque fois que son effet est défini. Vous devez ensuite implémenter ce rappel de sorte qu’il effectue la validation réelle de la valeur proposée. Le rappel doit retourner true si la valeur envoyée au rappel est valide et false sinon. Une false valeur produit une exception dans la partie spécifique du système de propriétés où le jeu de propriétés non valide a été tenté. Votre application doit donc être prête à gérer ces exceptions.

Les rappels de validation sont stockés sur les identificateurs de propriété de dépendance, plutôt que sur les métadonnées de propriété de dépendance. Votre rappel de validation n’a pas accès à une instance spécifique d’une DependencyObject propriété sur laquelle la propriété est définie et peut uniquement influencer les valeurs acceptées pour la propriété en général. Si vous avez besoin d’un rappel qui peut modifier les valeurs de propriété en fonction d’une instance spécifique, vous devez utiliser une combinaison d’un rappel et PropertyChangedCallback d’un CoerceValueCallback rappel tel qu’appliqué aux métadonnées de propriété de votre propriété. Vous pouvez également appliquer ces rappels aux propriétés associées qui doivent influencer la valeur de votre propriété. Pour plus d’informations, consultez Rappels et validation des propriétés de dépendance.

Méthodes d’extension

GetMethodInfo(Delegate)

Obtient un objet qui représente la méthode représentée par le délégué spécifié.

S’applique à

Voir aussi