Compartir vía


DependencyProperty.IsValidValue(Object) Método

Definición

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

Boolean

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.

Se aplica a