Мне нужно запустить некоторый пользовательский код в пользовательском элементе управления, когда определенное пользовательское свойство зависимости (определенное в родительском пользовательском элементе управления) изменилось.Каков наилучший способ сделать это в WPF?
Я потратил много времени, играя с триггерами в XAML, которые используют привязку данных для доступа к моему CDP, и нашел решение, которое требует установки промежуточного CDP (в дочернем пользовательском элементе управления), а затем запускаю свой пользовательский код в измененном событии второго CDP.Однако это довольно грязно и не похоже на правильное использование WPF.Кроме того, код, который я запускаю, не имеет прямого отношения к пользовательскому интерфейсу, поэтому XAML здесь не подходит.
Если предположить, что DataContext дочернего пользовательского элемента управления правильно настроен так, что я могу получить доступ к CDP, как я могу написать код для простого выполнения функции обратного вызова при изменении CDP?
У меня уже есть обратный вызов OnXXXChanged в родительском элементе управления высокого уровня, но этот элемент управления ничего не знает о дочернем элементе управления, поэтому он не может легко заставить код выполняться в объекте дочернего элемента управления.