DependencyProperty.IsValidValue(Object) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, zda je zadaná hodnota přijata pro typ vlastnosti prostřednictvím základní kontroly typů, a také pokud je v povoleném rozsahu hodnot pro daný typ.
public:
bool IsValidValue(System::Object ^ value);
public bool IsValidValue(object value);
member this.IsValidValue : obj -> bool
Public Function IsValidValue (value As Object) As Boolean
Parametry
- value
- Object
Hodnota, kterou chcete zkontrolovat.
Návraty
trueje-li hodnota přijatelná a má správný typ nebo odvozený typ; v opačném případě . false
Příklady
Následující příklad používá IsValidValue jako kontrolu před voláním SetValue vlastnosti závislosti.
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
Poznámky
U vlastnosti závislosti lze povolený rozsah hodnot pro tento typ zadat prostřednictvím ValidateValueCallback vlastnosti, která je k dispozici v registraci vlastnosti závislosti.
Tato metoda volá IsValidType interně. Pokud vlastnost závislostí nemá žádné ValidateValueCallback, volání této metody je účinně ekvivalentní volání IsValidType. Pokud vlastnost závislosti má hodnotu ValidateValueCallbacka pokud IsValidType by vrátila true, vrátí se vrácená hodnota jako implementovaná v zpětném volání.
Hodnota null je platná hodnota pro vlastnosti závislostí typu odkazu nebo pro Nullable<T> vlastnost závislosti a v těchto případech by se vrátila true . V případech, kdy vlastnost závislosti není odkaz ani Nullable<T> typ, IsValidType vrátí false hodnotu null místo vyvolání výjimky.