1
下面的方法從我觀察到的自定義刪除收集的各類物品:.NET NotifyCollectionChangedAction.Remove不刷新集合
public void RemoveRange(IList items)
{
foreach (T item in items)
{
this.Remove(item);
}
UpdateProcessingState(new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, items));
}
事件處理程序的NotifyCollectionChanged簡單地調用CollectionView.Refresh()。當我這樣做時,刪除的項目仍然在我的網格中。
但是,如果我一次刪除一個項目,並用此提升收集更改事件;
new NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove, item)
正確刷新網格。
我錯過了什麼嗎?
TIA。
原來它一定是我做錯了。 NotifyCollectionChangedEventArgs(NotifyCollectionChangedAction.Remove,項目)工作正常。 – 2010-12-15 02:45:18
@ e28Makaveli - 奇怪,因爲rossisdead所說的是正確的,如果你正在執行綁定到ListBox之類的東西,這不應該起作用。你在使用.NET 4.0嗎?也許如果有的話,它可能已經修復了嗎?我仍然在.NET 3.5上,所以我不知道。 – jpierson 2011-04-02 06:01:12