ValidateValueCallback Delegate

Definition

Representa un método que se utiliza como una devolución de llamada que valida el valor efectivo de una propiedad de dependencia.Represents a method used as a callback that validates the effective value of a dependency property.

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 

Parameters

value
Object

Valor que se va a validar.The value to be validated.

Return Value

Boolean

Es true si se validó el valor; es false si el valor enviado no era válido.true if the value was validated; false if the submitted value was invalid.

Inheritance
ValidateValueCallback

Examples

En el ejemplo siguiente se incluye una implementación de esta devolución de llamada para validar un intervalo de valores para una propiedad de dependencia personalizada.The following example includes an implementation of this callback to validate a range of values for a custom dependency property. En este caso, el valor de propiedad espera una enumeración y la validación garantiza que el valor proporcionado se evalúe como un miembro de esa enumeración.In this case the property value expects an enumeration, and the validation assures that the provided value evaluates to a member of that enumeration.

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

Remarks

Las devoluciones de llamada basadas en este delegado se utilizan en determinadas firmas de DependencyProperty.Register y métodos relacionados, como RegisterAttached y equivalentes de solo lectura.Callbacks based on this delegate are used by certain signatures of DependencyProperty.Register and related methods, such as RegisterAttached and read-only equivalents. Debe usar firmas que tomen el parámetro validateValueCallback si desea una validación específica del valor de propiedad cada vez que se establezca su efectivo.You should use signatures that take the validateValueCallback parameter if you want specific validation of the property value each time that its effective is set. Después, debe implementar esta devolución de llamada para que realice la validación real del valor propuesto.You should then implement this callback such that it performs the actual validation of the proposed value. La devolución de llamada debe devolver true si el valor enviado a la devolución de llamada es válido y false de lo contrario.The callback should return true if the value submitted to the callback is valid, and false otherwise. Un valor false producirá una excepción en la parte específica del sistema de propiedades en la que se intentó establecer la propiedad no válida, por lo que la aplicación debe estar preparada para controlar estas excepciones.A false value will produce an exception in the specific portion of the property system where the invalid property set was attempted, so your application should be prepared to handle these exceptions.

Las devoluciones de llamada de validación se almacenan en identificadores de propiedad de dependencia, en lugar de metadatos de propiedad de dependencia.Validation callbacks are stored on dependency property identifiers, rather than dependency property metadata. La devolución de llamada de validación no tiene acceso a una instancia específica de una DependencyObject en la que se establece la propiedad y solo puede influir en qué valores se aceptan para la propiedad en general.Your validation callback does not have access to a specific instance of a DependencyObject on which the property is set, and can only influence what values are accepted for the property in general. Si necesita una devolución de llamada que pueda cambiar los valores de propiedad en función de una instancia concreta, debe usar una combinación de una CoerceValueCallback y PropertyChangedCallback las devoluciones de llamada, tal y como se aplican a los metadatos de propiedad de la propiedad.If you need a callback that can change property values based on a specific instance, you should use a combination of a CoerceValueCallback and PropertyChangedCallback callbacks as applied to the property metadata of your property. También puede aplicar estas devoluciones de llamada a las propiedades relacionadas que deberían influir en el valor de la propiedad.You might also apply these callbacks to related properties that should influence your property's value. Para obtener más información, consulte devoluciones de llamada y validación de propiedades de dependencia.For details, see Dependency Property Callbacks and Validation.

Extension Methods

GetMethodInfo(Delegate)

Obtiene un objeto que representa el método representado por el delegado especificado.Gets an object that represents the method represented by the specified delegate.

Applies to

See also