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

Определение

Приводит значение указанного свойства зависимостей.Coerces the value of the specified dependency property. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.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)

Параметры

dp
DependencyProperty DependencyProperty DependencyProperty DependencyProperty

Идентификатор приводимого свойства зависимостей.The identifier for the dependency property to coerce.

Исключения

Указанный параметр dp или его значение недопустимы, или их не существует.The specified dp or its value were invalid or do not exist.

Примеры

В следующем примере вызывается CoerceValue в PropertyChangedCallback реализация, которая используется в качестве PropertyChangedCallback для различные свойства зависимостей для одного класса.The following example calls CoerceValue within a PropertyChangedCallback implementation that is used as the PropertyChangedCallback for a different dependency properties on the same class. Это распространенный подход для значения true добавления зависимостей между свойствами зависимостей.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

Комментарии

В дополнение к явным образом, вызываемому посредством вызова метода CoerceValue, CoerceValueCallback зависимости также вызывается свойство внутренне всякий раз, когда значение свойства зависимостей оценке по WPFWPF системы свойств.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 метода, в конечном итоге вызываются принудительного обратного вызова значения для свойства, которое можно указать.When you invoke the CoerceValue method, you are ultimately invoking the coerce value callback for the property that you specify. Обычно будет вызывать CoerceValue только в том случае, если вы знаете, что существует значение принудительного обратного вызова, и в том случае, если вы знаете критерии обратного вызова для приведения.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 находится в пределах класса свойство или обработки изменений обратных вызовов связанных свойств, которые влияют на значения друг друга в виде зависимых.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. Дополнительные сведения см. в разделе Проверка и обратные вызовы свойства зависимостей.For more information, see Dependency Property Callbacks and Validation.

Применяется к

Дополнительно