我有一个ObservableCollection在我的ViewModel与INotifyPropertyChanged
,说A.现在我要循环通过A获取一些元素更新。更新ObservableCollection元素不工作
public ObservableCollection<ClassA> A
{
get
{
if (this.a== null)
{
this.a= new ObservableCollection<ClassA>();
}
return this.a;
}
set
{
this.a= value;
this.OnPropertyChanged("A");// implement PropertyChangedEvent
}
}
在循环中,我更新了值。
foreach (var item in MyViewModel.A)
{
if(condition)
MyViewModel.A.Type= "CASH";
else
MyViewModel.A.Type= "CHECK";
}
但我看到setter部分没有达到。所以收集不会更新。
不,我做到了。 ClassA已经实现了INotifyPropertyChanged。 – Bigeyes
好的。建议看看这个[问题](http://stackoverflow.com/questions/1427471/observablecollection-not-noticing-when-item-in-it-changes-even-with-inotifyprop)。他们似乎在做与你类似的事情。 –
我试过了。它不能很好地工作,因为它包含ADD/REMOVE。我想替换部分代码。 – Bigeyes