DependencyObject.CoerceValue(DependencyProperty) Methode

Definition

Erzwingt den Wert der angegebenen Abhängigkeitseigenschaft. 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.

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

Der Bezeichner für die zu erzwingende Abhängigkeitseigenschaft.

Ausnahmen

Der angegebene dp oder sein Wert waren ungültig oder sind nicht vorhanden.

Beispiele

Im folgenden Beispiel wird innerhalb einer PropertyChangedCallback Implementierung aufgerufenCoerceValue, die für PropertyChangedCallback eine andere Abhängigkeitseigenschaften der gleichen Klasse verwendet wird. Dies ist ein gängiges Muster für die Einführung wahrer Wertabhängigkeiten zwischen Abhängigkeitseigenschaften.

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 zum expliziten Aufrufen CoerceValuewird die CoerceValueCallback abhängigkeitseigenschaft intern aufgerufen, wenn der Wert der Abhängigkeitseigenschaft vom WPF-Eigenschaftssystem erneut ausgewertet wird.

Wenn Sie die CoerceValue Methode aufrufen, rufen Sie letztendlich den Coerce-Wertrückruf für die von Ihnen angegebene Eigenschaft auf. Normalerweise werden Sie nur aufgerufen CoerceValue , wenn Sie wissen, dass ein Rückruf für den Koercewert vorhanden ist, und wenn Sie die Kriterien des Rückrufs für die Koercion kennen.

Das am häufigsten verwendete Szenario für das Aufrufen CoerceValue liegt in der Klassenbehandlung oder im Eigenschaftenänderungsrückruf von verwandten Eigenschaften, die die Werte der anderen auf abhängige Weise beeinflussen. Weitere Informationen finden Sie unter Rückrufe und Validierung von Abhängigkeitseigenschaften.

Gilt für:

Siehe auch