DependencyProperty.IsValidValue(Object) メソッド

定義

基本的な型チェックを使用して、指定された値がプロパティの型に対して受け入れられるかどうかを判断します。また、指定した値がその型の値の許容範囲内にある可能性もあります。

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

パラメーター

value
Object

チェックする値。

返品

true 値が受け入れ可能で、正しい型または派生型の場合。それ以外の場合は false

次の例では、依存関係プロパティでSetValueを呼び出す前に、IsValidValueをチェックとして使用します。

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

注釈

依存関係プロパティの場合、その型に使用できる値の範囲は、依存関係プロパティの登録で提供される ValidateValueCallback を通じて指定できます。

このメソッドは IsValidType を内部的に呼び出します。 問題の依存関係プロパティに ValidateValueCallbackがない場合、このメソッドの呼び出しは実質的に IsValidTypeの呼び出しと同等です。 依存関係プロパティに ValidateValueCallbackがあり、 IsValidTypetrueを返した場合、返される値はコールバックに実装された値になります。

null 値は、参照型の依存関係プロパティまたは Nullable<T> 依存関係プロパティの有効な値であり、このような場合は true を返します。 依存関係プロパティが参照でも Nullable<T> 型でもない場合、 IsValidType は例外を発生させるのではなく、null 値の false を返します。

適用対象