我建议使用BindingList类,而不是使用observeCollection,您可以这样做。。
BindingList<string> list = new BindingList<string>();
list.AllowEdit = true;
list.AllowNew = true;
list.AllowRemove = true;
// set the list as items source
itemCollection.ItemsSource = list;
// add many items...
// disable UI updation
list.RaiseListChangedEvents = false;
for each(string s in MyCollection){
list.Add(s);
}
// after all.. update the UI with following
list.RaiseListChangedEvents = true;
list.ResetBindings(); // this forces update of entire list
你甚至可以成批地启用/禁用更新,而不是一次添加所有内容,BindingList在我的所有UI中都比ObservaleCollection运行得更好,我想知道为什么在BindingList真正超越ObservaleCollection的时候,到处都有人谈论ObservaleCollection。