C#bindinglist由绑定列表组成

时间:2010-05-06 11:55:51

标签: c# c#-3.0 bindinglist

是否有一种简单的方法可以让绑定列表由多个绑定列表组成?即这是列表的“视图”。

也就是说:我有3个列表(list1,list2,list3)。我想要一个始终是3 listx的联合的列表(我们可以假设没有对象包含在2个不同的列表中)。

当然,我可以成功使用ListChange属性,但也许有一种更聪明的方法可以做到这一点?

2 个答案:

答案 0 :(得分:1)

要执行此操作,您需要创建自己的类型,实施IListIBindingList(理想情况下为IBindingListView),并可选择ICancelAddNewIRaiseItemChangedEvents 。您还需要公共非对象索引器(public T this[int index] {get;})或ITypedList

从完成类似的之后,我强烈建议你;不要,除非这真的重要。将引用复制到新的BindingList<>

会更实用

也;用新物品;它会进入哪个列表?

答案 1 :(得分:1)

你有没有看过CompositeCollection班?

根据您尝试做的事情,它可能会有所帮助:其目的是将多个集合合并到一个集合中(通常用于显示/绑定目的)。因此,您可以创建CompositeCollection并向其添加三个BindingList实例。 CompositeCollection将自动更新以包含“子”列表的成员。