3

複数のバインディングリストで構成されるバインディングリストを作成する簡単な方法はありますか? つまり、それがリストの「ビュー」です。

つまり、3 つのリスト (list1、list2、list3) があります。常に 3 つの listx の結合であるリストが必要です (2 つの異なるリストにはオブジェクトが含まれていないと仮定できます)。

確かに、ListChange プロパティを使用することはできますが、もっとスマートな方法があるのではないでしょうか?

4

2 に答える 2

1

これを行うには、独自の型を作成し、IListIBindingList(理想的IBindingListViewには )、およびオプションICancelAddNewで andを実装する必要がありますIRaiseItemChangedEvents。また、パブリックの非オブジェクト インデクサー ( public T this[int index] {get;}) またはITypedList.

これと同様のことを行ったことから、強くお勧めします。これが本当に重要でない限り、しないでください。参照を新しい にコピーする方がより実用的BindingList<>です。

また; 新しいアイテムで; それはどのリストに入りますか?

于 2010-05-06T12:14:48.747 に答える
1

CompositeCollectionクラスを調べましたか?

何をしようとしているのかによっては、それが役立つ場合があります。その目的は、複数のコレクションを単一のコレクションに結合することです (通常は表示/バインディングの目的で)。したがって、 を作成し、それに 3 つのインスタンスをCompositeCollection追加できます。BindingListCompositeCollection自動的に更新され、「子」リストのメンバーが含まれます。

于 2010-05-06T12:22:54.827 に答える