DependencyObject.CoerceValue(DependencyProperty) Yöntem

Tanım

Belirtilen bağımlılık özelliğinin değerini zorlar.Coerces the value of the specified dependency property. Bu, bağımlılık özelliği için özellik meta verilerinde belirtilen tüm CoerceValueCallback işlevleri çağıran DependencyObjectbulunduğundan gerçekleştirilir.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

public:
 void CoerceValue(System::Windows::DependencyProperty ^ dp);
public void CoerceValue (System.Windows.DependencyProperty dp);
member this.CoerceValue : System.Windows.DependencyProperty -> unit
Public Sub CoerceValue (dp As DependencyProperty)

Parametreler

dp
DependencyProperty

Zorunlu olacak bağımlılık özelliği için tanımlayıcı.The identifier for the dependency property to coerce.

Özel durumlar

Belirtilen dp veya değeri geçersiz veya yok.The specified dp or its value were invalid or do not exist.

Örnekler

Aşağıdaki örnek, aynı sınıftaki farklı bir bağımlılık özellikleri için PropertyChangedCallback olarak kullanılan PropertyChangedCallback bir uygulama içinde CoerceValue çağırır.The following example calls CoerceValue within a PropertyChangedCallback implementation that is used as the PropertyChangedCallback for a different dependency properties on the same class. Bu, bağımlılık özellikleri arasındaki gerçek değer bağımlılıklarını tanıtma yaygın bir örüntü.This is a common pattern for introducing true value dependencies between dependency properties.

private static void OnCurrentReadingChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
  d.CoerceValue(MinReadingProperty);
  d.CoerceValue(MaxReadingProperty);
}
Private Shared Sub OnCurrentReadingChanged(ByVal d As DependencyObject, ByVal e As DependencyPropertyChangedEventArgs)
    d.CoerceValue(MinReadingProperty)
    d.CoerceValue(MaxReadingProperty)
End Sub

Açıklamalar

Çağrı CoerceValuearacılığıyla açıkça çağrılmasının yanı sıra, bağımlılık özelliği değeri WPFWPF özellik sistemi tarafından yeniden değerlendirildiğinde bir bağımlılık özelliği için CoerceValueCallback de dahili olarak çağrılır.In addition to being explicitly invoked through calling CoerceValue, the CoerceValueCallback for a dependency property is also invoked internally whenever the dependency property value is being re-evaluated by the WPFWPF property system.

CoerceValue yöntemini çağırdığınızda, son olarak belirttiğiniz özellik için zorunlu değer geri çağırma işlemini çağırdığınızda.When you invoke the CoerceValue method, you are ultimately invoking the coerce value callback for the property that you specify. Genellikle, yalnızca bir coerce değeri geri çağrısının olduğunu bildiğiniz ve geri aramanın zorlama ölçütlerini bildiğiniz durumlarda CoerceValue çağıracaksınız.Typically you will invoke CoerceValue only if you know that a coerce value callback exists, and if you know the callback's criteria for coercion.

CoerceValue çağırmak için en yaygın senaryo, her birinin değerlerini bağımlı bir şekilde etkileyen ilgili özelliklerin sınıf işleme veya özellik değişiklik geri çağırmaları içindedir.The most common scenario for calling CoerceValue is within class handling or property change callbacks of related properties that influence each other's values in a dependent way. Daha fazla bilgi için bkz. bağımlılık özelliği geri çağırmaları ve doğrulama.For more information, see Dependency Property Callbacks and Validation.

Şunlara uygulanır

Ayrıca bkz.