IList和IBindingList之间的区别

时间:2011-08-12 07:36:37

标签: c# .net collections

  

可能重复:
  List<T> vs BindingList<T> Advantages/DisAdvantages

IList和IBindingList有什么区别?何时使用什么和哪里不使用C#中的内容? 公共接口IBindingList:IList,     ICollection,IEnumerable

3 个答案:

答案 0 :(得分:10)

它们专为不同场景设计

  • IList旨在成为一个非常有效的对象容器。这是简约的
  • IBindingList旨在成为对象的容器,提供更丰富的API,支持更多场景,如UI数据绑定。

如果你深入研究API,你会发现IBindingList的事件集合比IList(没有)更丰富。它需要额外的开销来提供更丰富的API,以适应更多场景,如UI数据绑定。

答案 1 :(得分:0)

最好使用提供所需功能的界面,而不是更多。例如,如果您只需要对集合进行顺序访问,那么IEnuerable就足够了。

我担心我无法帮助您解决有关IBindingList和IList之间差异的主要问题。

答案 2 :(得分:0)

IList是用于保存一些数据的简单数据结构,它可以动态增长,它包含List的其他常规功能

而Binding列表用于绑定某个控件和集合之间的数据,因为它会在有更改时通知控件和集合,这有助于特殊的基于UI的应用程序