0

新しいアイテムの追加が発生したときにキャンセルできるようにするコレクション クラス (ObservableCollectionまたはから派生) を実装しようとしています。BindingList

ObservableCollection理由により、イベント中にコレクション内のアイテムの編集が許可されていないことはわかっていますが、またはCollectionChangedから派生させることにより、これを「バイパス」する方法を探しています。ObservableCollectionBindingList

どんな例でも大歓迎です。

4

1 に答える 1

1

まあ、いくつかのBeforeCollectionChangedイベントが必要です。追加するかどうかを判断するために参照EventArgsするプロパティとともに を渡します。Cancelled

このようなものだと思います:

public override void Add(T item) {
  var e = new BeforeCollectionChangedEventArgs();
  RaiseBeforeCollectionChanged(e);
  if (!e.Canceled)
    base.Add(item);
}

CollectionChangedそれまでにコレクションはすでに変更されているため、明らかに遅すぎます。

于 2012-10-22T06:07:30.753 に答える