【发布时间】:2010-09-21 23:40:56
【问题描述】:
有人可以向我解释一下这里发生了什么吗?
我正在代码中创建绑定。
目标对象是一个用户控件
目标属性是一个布尔 DependencyProperty
源对象是一个 FrameworkElement 并实现 INotifyPropertyChanged
source 属性的类型为 ObservableCollection
会发生什么:
-
在代码中创建绑定,结果 BindingExpressionBase 看起来很好,模式是 OneWay,目标值设置正确(此时)
绑定 b = new Binding();
b.Path = "SourceProperty";
b.Source = SourceObject;
BindingExpressionBase e = this.SetBinding(TargetProperty, b); 源属性随后会因另一个数据绑定而更改。 UserControl 尝试触发 PropertyChanged 事件。
....但没有人在听。 PropertyChanged 为空。
我确定没有为目标属性分配任何其他内容,因此它仍应被绑定。为什么绑定不监听 PropertyChanged 事件?
【问题讨论】: