DependencyProperty.IsValidValue(Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Determina si el valor proporcionado se acepta para el tipo de propiedad mediante la comprobación de tipo básico y, potencialmente, si está comprendido en el intervalo permitido de valores de ese tipo.
public:
bool IsValidValue(System::Object ^ value);
public bool IsValidValue (object value);
member this.IsValidValue : obj -> bool
Public Function IsValidValue (value As Object) As Boolean
Parámetros
- value
- Object
El valor que se va a comprobar.
Devoluciones
Es true
si el valor es aceptable y es del tipo correcto o un tipo derivado; de lo contrario, es false
.
Ejemplos
En el ejemplo siguiente se usa IsValidValue como comprobación antes de llamar a SetValue en la propiedad de dependencia.
void TrySetValueWithValidate(DependencyObject target, DependencyProperty dp, object providedValue)
{
if (dp.IsValidValue(providedValue))
{
target.SetValue(dp, providedValue);
}
}
Private Sub TrySetValueWithValidate(ByVal target As DependencyObject, ByVal dp As DependencyProperty, ByVal providedValue As Object)
If dp.IsValidValue(providedValue) Then
target.SetValue(dp, providedValue)
End If
End Sub
Comentarios
Para una propiedad de dependencia, se puede especificar un intervalo permitido de valores para ese tipo a través de un ValidateValueCallback que se proporciona en el registro de propiedades de dependencia.
Este método llama IsValidType internamente. Si la propiedad de dependencia en cuestión no ValidateValueCallbacktiene , llamar a este método equivale eficazmente a llamar IsValidTypea . Si la propiedad de dependencia tiene , ValidateValueCallbacky si IsValidType hubiera devuelto true
, el valor devuelto será como implementado en la devolución de llamada.
Un valor NULL es un valor válido para las propiedades de dependencia de tipo de referencia, o para una Nullable<T> propiedad de dependencia, y devolvería true
para estos casos. En los casos en los que la propiedad de dependencia no es una referencia ni un Nullable<T> tipo, IsValidType devolverá false
un valor NULL en lugar de generar una excepción.