DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) DependencyObject.CoerceValue(DependencyProperty) Method

Definition

Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft.Coerces the value of the specified dependency property. Dies erfolgt durch den Aufruf einer beliebigen CoerceValueCallback-Funktion, die in den Metadaten für die Abhängigkeitseigenschaft angegeben ist, während sie beim aufrufenden DependencyObject beendet wird.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)

Parameter

dp
DependencyProperty DependencyProperty DependencyProperty DependencyProperty

Der Bezeichner für die zu erzwingende Abhängigkeitseigenschaft.The identifier for the dependency property to coerce.

Ausnahmen

Der angegebene dp oder sein Wert waren ungültig oder sind nicht vorhanden.The specified dp or its value were invalid or do not exist.

Beispiele

Im folgenden Beispiel CoerceValue wird innerhalb einer PropertyChangedCallback -Implementierung aufgerufen PropertyChangedCallback , die als für andere Abhängigkeits Eigenschaften für dieselbe Klasse verwendet wird.The following example calls CoerceValue within a PropertyChangedCallback implementation that is used as the PropertyChangedCallback for a different dependency properties on the same class. Dies ist ein gängiges Muster zum Einführen von true-Wert Abhängigkeiten zwischen Abhängigkeits Eigenschaften.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

Hinweise

Zusätzlich zu dem explizit durch Aufrufen CoerceValuevon aufgerufen wird, wird die CoerceValueCallback für eine Abhängigkeits Eigenschaft auch intern aufgerufen, wenn der Wert der Abhängigkeits Eigenschaft vom WPFWPF Eigenschaften System erneut ausgewertet wird.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.

Wenn Sie die CoerceValue -Methode aufrufen, rufen Sie letztendlich den coerce-Wert Rückruf für die angegebene Eigenschaft auf.When you invoke the CoerceValue method, you are ultimately invoking the coerce value callback for the property that you specify. Normalerweise werden Sie CoerceValue nur aufrufen, wenn Sie wissen, dass ein coerce-Wert Rückruf vorhanden ist, und wenn Sie die Kriterien des Rückrufs für die Umwandlung kennen.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.

Das häufigste Szenario für das Aufrufen CoerceValue von ist innerhalb der Klassen Behandlung oder der Rückrufe von Eigenschafts Änderungen von verknüpften Eigenschaften, die die Werte der anderen Werte auf abhängige Weise beeinflussen.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. Weitere Informationen finden Sie unter Rückrufe und Validierung von Abhängigkeitseigenschaften.For more information, see Dependency Property Callbacks and Validation.

Gilt für:

Siehe auch