我正在创建用于编辑地址类的usercontrol。地址类实现了Inotifypropertychanged,并具有诸如街道,邮政编码,代码等属性。
然后我有一个持有地址类的客户类。
我想创建一个用于编辑地址的usercontrol,以便将addresscontrol绑定到客户的地址属性。当我更改用户控件中的地址时,应该更新地址属性。
<UIComponents:AddressControl Address="{Binding Address, Mode=TwoWay}"/>
地址是依赖属性。 customer类上的属性也实现了inotifypropertychanged,但永远不会调用该set。我怀疑这是因为实际对象不仅仅改变了子属性。
那么当对象发生变化时如何让它调用setter?
此致 的Morten
答案 0 :(得分:0)
在Customer类中,将Address对象的PropertyChanged事件挂钩到我们将调用ReflectPropertyChanged的处理程序。 ReflectPropertyChanged将在您的地址成员上调用NotifyPropertyChanged。
如果这样做,请不要忘记在Address依赖项属性中实现PropertyChanged处理程序,该属性在设置新地址时从旧值中删除处理程序。