Dev GridView 绑定List、BindingList 、BindingSource

网友投稿 986 2022-10-16

Dev GridView 绑定List、BindingList 、BindingSource

Dev GridView 绑定List、BindingList 、BindingSource

作者:jiankunking ​​​​

今天听到同事处理数据结构的时候特意处理为了 BindingList,据说可以直接绑定到Dev GridView上,于是测试了一下:

1、在Dev GridView中新增三列,三列的FieldName分别对应与FormItem类对应:ItemKey、Name、Enable

具体类代码如下:

public class FormItem{ ///

/// 标识 /// public string ItemKey { get; set; } /// /// 名称 /// public string Name { get; set; } /// /// 是否可用 /// public bool Enable { get; set; }}

3、在Form窗体上增加一个Buntton按钮事件,并添加Click事件,在 Click事件中填充List、BindingList 、BindingSource,并进行绑定测试:

BindingList itemsBindingList = new BindingList(); List itemsList = new List(); BindingSource bs = new BindingSource(); private void simpleButton1_Click(object sender, EventArgs e) { for (int i = 0; i < 10; i++) { FormItem fi = new FormItem(); fi.ItemKey = i.ToString(); fi.Name = Guid.NewGuid().ToString(); if (i % 2 == 0) { fi.Enable = true; } else { fi.Enable = false; } itemsBindingList.Add(fi); itemsList.Add(fi); bs.Add(fi); } //this.gridControl1.DataSource = itemsBindingList; //this.gridControl1.DataSource = itemsList; this.gridControl1.DataSource = bs; }

4、通过测试发现List、BindingList 、BindingSource均可以绑定到Dev GridView上

5、用过Dev GridView的朋友应该知道,给Dev GridView绑定DataTable后,在GridView上的修改会同步到到DataTable上,那么问题来了Dev GridView 绑定List、BindingList 、BindingSource会不会同步呢?

于是添加GridView的CellValueChanged事件,在该事件中监视变量itemsBindingList、itemsList、bs,可以发现修改也是同步的。

小注: BindingSource第一次用,有不对的地方,还请指教!

数据源可以是实现下列接口之一的任何类型:

​​IList​​ 接口,包括一维数组。List等!​​IListSource​​​ 接口,例如,​​DataTable​​ 和 ​​DataSet​​ 类。​​IBindingList​​​ 接口,例如,​​BindingList​​ 类。​​IBindingListView​​​ 接口,例如,​​BindingSource​​ 类。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:MicroPHP- 微型PHP框架
下一篇:Netty分布式ByteBuf使用的回收逻辑剖析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~