C# 可撤销托收
我正在尝试实现一个集合类(派生自C# 可撤销托收,c#,observablecollection,bindinglist,C#,Observablecollection,Bindinglist,我正在尝试实现一个集合类(派生自ObservableCollection或BindingList),它允许我在添加任何新项时取消添加 现在我知道,observedcollection在CollectionChanged事件期间不允许编辑集合中的项目是有原因的,但我正在寻找一种方法来“绕过”这一点,方法是从observedcollection或bindingslist派生 任何示例都将不胜感激。好吧,在CollectionChanged事件之前,您需要一些,传递带有Cancelled属性的Even
ObservableCollection
或BindingList
),它允许我在添加任何新项时取消添加
现在我知道,observedcollection
在CollectionChanged
事件期间不允许编辑集合中的项目是有原因的,但我正在寻找一种方法来“绕过”这一点,方法是从observedcollection
或bindingslist
派生
任何示例都将不胜感激。好吧,在CollectionChanged事件之前,您需要一些
,传递带有Cancelled
属性的EventArgs
,以确定是否添加它
我猜是这样的:
public override void Add(T item) {
var e = new BeforeCollectionChangedEventArgs();
RaiseBeforeCollectionChanged(e);
if (!e.Canceled)
base.Add(item);
}
CollectionChanged
显然为时已晚,因为此时集合已经更改