【发布时间】:2012-01-27 22:14:04
【问题描述】:
我正在编写一个能够接受 PropertyPath 的 MarkupExtension。我希望能够订阅给定属性 PropertyPath 的“更改”事件(DependencyProperty 或通过 INotifyPropertyChanged 更新的事件)实际上不会调用源属性。
我的代码目前如下所示:
public override object ProvideValue(IServiceProvider serviceProvider)
{
var binding = new Binding();
binding.Path = Path;
...
return false;
}
但我不确定如何继续从绑定对象获取通知更改。如果我将绑定连接到任何 DependencyProperty,它将自动调用源属性 getter,这是我试图避免的。
似乎我可以以某种方式使用 Binding.SourceUpdatedEvent,但是,由于它是一个附加的路由事件,我不确定如何从 MarkupExtension 订阅它。
谢谢!
【问题讨论】: