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.

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

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