我使用方法绑定了PropertyChanged事件处理程序,但是,无论我使用的是realm.write()还是使用ros来修改属性,它根本不会触发。
我的模型结构如下:我有一个DeviceList
RealmObject,其中包含IList<Device> Devices
属性。 Device
RealmObject也有一个嵌套属性People
,而People
也是一个RealmObject。
当我使用DeviceList.Devices.SubscribeForNotifications()
时,一切正常,对ros中People
属性的更改将自动且正确地触发通知事件。但是,Device.People.PropertyChanged += (do something);
根本没有触发,Device.PropertyChanged += (do something);
和绑定到Device.People.(Property)
的用户界面也不会更新;但是当我使用断点访问数据时,嵌套People
中的所有数据都发生了变化。获取嵌套对象更改和更新绑定UI的正确方法是什么?
感谢。
答案 0 :(得分:0)
PropertyChanged
事件只会触发对象的顶级属性。如果相关对象发生变化,例如:
foo.PropertyChanged += (s, e) =>
{
Console.WriteLine(e.PropertyName);
};
foo.Bar.Something = 5; // Doesn't trigger anything
foo.Bar = new Bar(); // Triggers notification