DependencyProperty.IsValidValue(Object) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
透過基本型別檢查,判斷屬性型別是否接受所提供的值,並在必要時判斷此值是否位於該型別的允許值範圍內。
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 值傳回 false
, IsValidType 而不是引發例外狀況。