DependencyProperty.IsValidValue(Object) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Sağlanan değerin, temel tür denetimi aracılığıyla özellik türü için kabul edilip edilmeyeceğini ve bu tür için izin verilen değer aralığında olup olmadığını belirler.
public:
bool IsValidValue(System::Object ^ value);
public bool IsValidValue(object value);
member this.IsValidValue : obj -> bool
Public Function IsValidValue (value As Object) As Boolean
Parametreler
- value
- Object
Denetlenecek değer.
Döndürülenler
true değer kabul edilebilirse ve doğru türdeyse veya türetilmiş bir türdeyse; aksi takdirde , false.
Örnekler
Aşağıdaki örnek, bağımlılık özelliğini çağırmadan IsValidValue önce denetim olarak kullanırSetValue.
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
Açıklamalar
Bağımlılık özelliği için, bu tür için izin verilen bir değer aralığı, bağımlılık özelliği kaydında sağlanan bir ValidateValueCallback aracılığıyla belirtilebilir.
Bu yöntem dahili olarak çağırır IsValidType . Söz konusu bağımlılık özelliğinde yoksa ValidateValueCallback, bu yöntemin çağrılması etkili bir şekilde çağrısıyla IsValidTypeeşdeğerdir. Bağımlılık özelliğinde bir ValidateValueCallbackvarsa ve IsValidType döndürseydi true, döndürülen değer geri çağırmada uygulandığı gibi olur.
Null değer, başvuru türü bağımlılık özellikleri veya bağımlılık özelliği için geçerli bir Nullable<T> değerdir ve bu durumlar için döndürülmesi true gerekir. Bağımlılık özelliğinin bir başvuru veya Nullable<T> tür olmadığı durumlarda, IsValidType özel durum oluşturmak yerine null değer döndürür false .