DependencyObject.CoerceValue(DependencyProperty) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Приводит значение указанного свойства зависимостей. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте 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
или его значение недопустимы, или их не существует.
Примеры
В следующем примере вызывается CoerceValue в PropertyChangedCallback реализации, которая используется в качестве PropertyChangedCallback различных свойств зависимостей для одного класса. Это распространенный шаблон для введения зависимостей истинного значения между свойствами зависимостей.
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 свойство зависимостей также вызывается внутренне при повторном вычислении значения свойства зависимостей системой свойств WPF.
При вызове CoerceValue метода в конечном итоге вызывается обратный вызов значения принудителя для указанного свойства. Обычно вызов CoerceValue выполняется только в том случае, если вы знаете, что существует обратный вызов со значением принудительного вызова, и если вы знаете критерии обратного вызова для приведения.
Наиболее распространенный сценарий вызова CoerceValue заключается в обработке класса или обратном вызове изменений свойств связанных свойств, которые влияют на значения друг друга зависимым образом. Дополнительные сведения см. в разделе Проверка и обратные вызовы свойства зависимостей.