Aracılığıyla paylaş


DependencyProperty.IsValidValue(Object) Yöntem

Tanım

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

Boolean

true değer kabul edilebilirse ve doğru türde veya türetilmiş bir türdeyse; aksi takdirde , false.

Örnekler

Aşağıdaki örnek, bağımlılık özelliğini çağırmadan SetValue önce denetim olarak kullanırIsValidValue.

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 aracılığıyla ValidateValueCallback 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ı etkin bir şekilde çağrısıyla IsValidTypeeşdeğerdir. Bağımlılık özelliğinin bir ValidateValueCallbacköğesi varsa IsValidType ve 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üler true . 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 .

Şunlara uygulanır