DependencyProperty.IsValidValue(Object) Metodo

Definizione

Determina se il valore fornito è accettato per il tipo di proprietà tramite il controllo del tipo di base e anche, potenzialmente, se è all'interno dell'intervallo consentito dei valori per quel tipo.Determines whether the provided value is accepted for the type of property through basic type checking, and also potentially if it is within the allowed range of values for that type.

public:
 bool IsValidValue(System::Object ^ value);
public bool IsValidValue (object value);
member this.IsValidValue : obj -> bool
Public Function IsValidValue (value As Object) As Boolean

Parametri

value
Object

Valore da controllare.The value to check.

Restituisce

true se il valore è accettabile ed è del tipo corretto o di un tipo derivato; in caso contrario, false.true if the value is acceptable and is of the correct type or a derived type; otherwise, false.

Esempi

Nell'esempio seguente viene utilizzato IsValidValue come controllo prima di chiamare SetValue sulla proprietà di dipendenza.The following example uses IsValidValue as a check before calling SetValue on the dependency property.

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

Commenti

Per una proprietà di dipendenza, è possibile specificare un intervallo di valori consentiti per quel tipo tramite un ValidateValueCallback fornito nella registrazione della proprietà di dipendenza.For a dependency property, an allowed range of values for that type can be specified through a ValidateValueCallback that is provided in the dependency property registration.

Questo metodo chiama IsValidType internamente.This method calls IsValidType internally. Se la proprietà di dipendenza in questione non dispone di ValidateValueCallback, la chiamata a questo metodo equivale effettivamente alla chiamata di IsValidType.If the dependency property in question has no ValidateValueCallback,then calling this method is effectively equivalent to calling IsValidType. Se la proprietà di dipendenza dispone di un ValidateValueCallbacke se IsValidType avrebbe restituito true, il valore restituito sarà implementato nel callback.If the dependency property does have a ValidateValueCallback, and if IsValidType would have returned true, then the value returned will be as implemented in the callback.

Un valore null è un valore valido per le proprietà di dipendenza del tipo di riferimento o per una proprietà di dipendenza Nullable<T> e restituirà true per questi casi.A null value is a valid value for reference type dependency properties, or for a Nullable<T> dependency property, and would return true for these cases. Nei casi in cui la proprietà di dipendenza non sia un riferimento né un tipo di Nullable<T>, IsValidType restituirà false per un valore null anziché generare un'eccezione.In cases where the dependency property is neither a reference nor a Nullable<T> type, IsValidType will return false for a null value rather than raise an exception.

Si applica a