DependencyProperty.IsValidValue(Object) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Determina se o valor fornecido é aceito para o tipo de propriedade por meio de verificação de tipo básica e também potencialmente se ele está dentro do intervalo permitido de valores para esse 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
O valor a ser verificado.
Retornos
true
se o valor é aceitável e é do tipo correto ou um tipo derivado; caso contrário, false
.
Exemplos
O exemplo a seguir usa IsValidValue como uma verificação antes de chamar SetValue a propriedade de dependência.
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
Comentários
Para uma propriedade de dependência, um intervalo permitido de valores para esse tipo pode ser especificado por meio de um ValidateValueCallback que é fornecido no registro de propriedade de dependência.
Esse método chama IsValidType internamente. Se a propriedade de dependência em questão não tiver , ValidateValueCallbackchamar esse método será efetivamente equivalente à chamada IsValidType. Se a propriedade de dependência tiver um ValidateValueCallback, e se IsValidType teria retornado true
, o valor retornado será como implementado no retorno de chamada.
Um valor nulo é um valor válido para propriedades de dependência de tipo de referência ou para uma Nullable<T> propriedade de dependência e retornaria true
para esses casos. Nos casos em que a propriedade de dependência não for uma referência nem um Nullable<T> tipo, IsValidType retornará false
para um valor nulo em vez de gerar uma exceção.