黑马程序员技术交流社区
标题:
Checkboxlist数据源绑定
[打印本页]
作者:
杨占伟
时间:
2012-12-4 20:24
标题:
Checkboxlist数据源绑定
本帖最后由 杨占伟 于 2012-12-4 23:04 编辑
代码如下:
ArrayList books = new ArrayList();
books.Add("c#基础教程");
books.Add("ASP.Net简明教程");
books.Add("Web程序设计");
books.Add("VB.net程序设计");
books.Add("J#Web应用程序设计");
books.Add("JavaScript编程技巧");
CheckBoxList1.DataSource = books;
//这里是不是只能赋给ArrayList类型的数组
CheckBoxList1.DataBind();
// 这句话的原理是什么?
CheckBoxList1.DataSource = books;这里已经赋过值,为什么还要执行下面这句CheckBoxList1.DataBind();
作者:
汪书凯
时间:
2012-12-4 21:20
前一句只是指定数据源,还没有执行绑定操作,而后一句才是把数据源里的数据绑定在控件上。 打个比方:我给你吃个蛋糕,我把蛋糕给你,这就好像是datagrid.datasource=object,只是把蛋糕给你了,但你还没有吃,而你吃下这个蛋糕,就等于 databind()。
作者:
杨占伟
时间:
2012-12-4 23:03
汪书凯 发表于 2012-12-4 21:20
前一句只是指定数据源,还没有执行绑定操作,而后一句才是把数据源里的数据绑定在控件上。 打个比方:我 ...
这个吃蛋糕的比喻真的很形象,非常感谢~~
作者:
生活墨墨
时间:
2012-12-5 08:58
不一定是ArrayList,例如如果是Linq的话,可以直接赋值给他,CheckBoxList1.DataSource = from b in books select b;
作者:
生活墨墨
时间:
2012-12-5 08:59
补充说明:
只是数据源的问题而已,还可以直接在页面是进行绑定
作者:
刘亚龙
时间:
2012-12-6 13:55
DataSource是用来填充控件的数据源,数据源可以是任何实现IEnumerable的对象,就是说可以是ArrayList可以是数组,但更多的时候用DataSource指定DataTable或DataSet类型的数据源。
CheckBoxList1.DataSource = books; //这里是将CheckBoxList1的数据源指定为books,我觉得用“指定”更合适,这会没有真的得到数据
CheckBoxList1.DataBind(); //这里才是把数据绑定到控件上
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2