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 ,而且 如果 IsValidType 傳回 ,則傳回 true 的值將會如回呼中所實作。

Null 值是參考型別相依性屬性的有效值,或 Nullable<T> 相依性屬性的有效值,而且會針對這些案例傳回 true 。 如果相依性屬性不是參考或 Nullable<T> 型別,則會針對 Null 值傳回 falseIsValidType 而不是引發例外狀況。

適用於