8

System.ComponentModel.BindingList方法Add(object)との違いは何AddNew()ですか?MSDNのドキュメントには次のように書かれています。

  • Add:の末尾にオブジェクトを追加しますCollection<T>

  • AddNew:コレクションに新しいアイテムを追加します。

どちらの方法でもコレクションにアイテムが追加されるようですがAdd(object)、1回のショットで追加されますが、AddNew()少し複雑です。でのテストは機能してAdd(object)いるようですが、正しい方法を使用しているかどうかを知りたいです。

では、これらの方法の違いは何ですか?

4

2 に答える 2

10

AddNew()オブジェクトを作成します (そのため、パラメーターがありません)。
に渡す新しいオブジェクトを作成する方法がわからないグリッドで使用するように設計されていますAdd()

于 2012-04-17T19:49:03.807 に答える
0

BindingList() の派生クラスを実装する場合、AddNew() は非常に便利です (これはよく知られている Factory デザイン パターンです)。

リスト自体に依存する値でコードが新しい項目を初期化できるようにします。たとえば、バインディング リストに子のリストが含まれている場合は、親オブジェクトへの外部キーです。

于 2021-12-13T17:12:33.293 に答える