【发布时间】:2011-07-26 08:06:09
【问题描述】:
有没有办法暂停ObservableCollection 的NotifyCollectionChanged 事件?我的想法如下:
public class PausibleObservableCollection<Message> : ObservableCollection<Message>
{
public bool IsBindingPaused { get; set; }
protected override void OnCollectionChanged(System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
if (!IsBindingPaused)
base.OnCollectionChanged(e);
}
}
这确实暂停了通知,但显然当时被遗漏(但仍添加)的项目在 NotifyCollectionChangedEventArgs 内,因此当我再次启用通知时不会传递给绑定的 DataGrid。
我是否必须想出一个集合的自定义实现来控制这个方面?
【问题讨论】:
标签: wpf data-binding observablecollection