使用C#</t>中的datagridview绑定List <t>

时间:2014-03-07 01:20:59

标签: c# winforms

我想知道绑定列表直接与datagridview数据源和绑定Bindingsource到datagridview有什么区别。这是一个例子:

练习1:

List<Employee> list = this.GetEmployees();
dgvEmployees.Datasource = list;

练习2:

List<Employee> list = this.GetEmployees();
BindingSource soure = new BindingSource();
soure.Datasource = list;
dgvEmployees.Datasource = soure;

那么,哪一个应该是好的做法?

1 个答案:

答案 0 :(得分:2)

一般情况下,直接使用Datasource适用于简单情况,使用BindingSource适用于更复杂的情况。如果您只想显示数据并且在显示数据之前并不真正关心修改数据,请随时使用Datasource

另一方面,

BindingSource允许你(不是详尽的清单):

  • 指定Format方法以在用户看到之前转换列表数据,并指定Parse方法在用户编辑后将列表数据转换回来
  • 跟踪列表中当前(已选中)项目
  • 自定义添加新元素的方式
  • 禁止编辑当前项目
  • 在添加或删除元素时收到通知