我在我的列表视图中绑定了我的ViewModel中的observableCollection项(我有两个列表视图,每个都有自己的observableCollection)。我还将几个状态栏属性限制在ViewModel中的属性。如何在模型更改但没有属性更改时通知MVVM中的视图
在我的视图模型中,我有一些特殊的复制/粘贴功能,复制'内存'缓冲区'。实际上,我的视图模型(和下面的模型)中的属性只不过是指向这些内存缓冲区的“指针”。复制时我知道属性被改变了,但是值本身没有被setter改变(所以INotifyPropertyChanged没有被调用)。
如何刷新列表视图? 状态栏并不那么难,因为我可以调用视图模型中的方法来重新计算值。但是,对于列表视图的数据来说是非常不切实际的。
在非MVVM中,我只是用数据重新填充它们,但这不可能(我认为)与MVVM /绑定。
复制这些“内存缓冲区”时不能提出正确的通知吗?你并不总是需要依赖财产制定者。 – Bernard 2012-02-21 17:28:45
是喜欢做一个不存在的字符串(如属性'内存'),并通过重新填充列表视图对我的看法作出反应?我认为这被认为是一个肮脏的伎俩。 – 2012-02-21 17:30:15
难道你不能手动引发PropertyChanged事件来告诉UI更新吗? 'RaisePropertyChanged(“SomeProperty”);' – Rachel 2012-02-21 17:34:41