C#数据绑定控件中的DataSource属性浅谈

有的时候,你在编程进入一定阶段,进一步提升很困难的境况之下,不妨回过头来看看基础的东西,或许你会有新的受益,或许能够真正的体会到孔夫子所谓的“温故而知新”的真正内涵。
常用的c#数据绑定控件有:repeater、datalist、gridview、detailsview等,在这里我拿repeater来简单说明问题。
使用该属性指定用来填充repeater控件的数据源。datasource可以是任何system.collections.ienumerable对象,
如用于访问数据库的system.data.dataview、system.collections.arraylist、system.collections.hashtable、数组或ilistsource对象。
常用的数据源:
一个datatable
一个dataview
一个dataset
任何实现ilistsource接口的组件
任何实现ilist接口的组件
注意:
若要绑定到对象的强类型数组,该对象类型必须包含公共属性。
下面通过几个简单的实例来介绍datasource的具体应用。
绑定datatable,一般都是从数据库取出数据,然后直接进行绑定,具体的数据库操作的逻辑不再提供。想必大家都已经非常熟悉。绑定dataview与这个类似。
程序代码

privatevoidBindData()    {    //通过业务逻辑,直接调用数据库中的数据    DataTablenTable=getTable();      Repeater1.DataSource=nTable;    Repeater1.DataBind();    }

HTML代码
C#数据绑定控件程序代码

            姓名th>   
年龄th>

绑定Array、ArrayList、List、一维数组之类,里面存储简单的数据。
ArrayList
C#数据绑定控件程序代码

privatevoidBindData()    {    ArrayListlist=newArrayList();    list.Add("Jim");    list.Add("Tom");    list.Add("Bluce");    list.Add("Mary");      Repeater1.DataSource=list;    Repeater1.DataBind();    }

HTML适当改变
程序代码

   
姓名

绑定Dictionary、HashTable
Dictionary
C#数据绑定控件程序代码

privatevoidBindData()    {    Dictionarydic=newDictionary();    dic.Add("Jim",21);    dic.Add("Tom",26);    dic.Add("Bluce",33);    dic.Add("Mary",18);      Repeater1.DataSource=dic;    Repeater1.DataBind();    }

HTML代码
程序代码

   
姓名
年龄
td>

绑定对象集合,IList等。这个很是有用,在我们进行数据查询的时候,经常从数据库取出数据,为了方便操作,需要封装成对象,但是有的时候需要将这些对象以列表的形式显示出来,一种解决方案:对象转换为DataTable,另一种就是直接调用数据库。这两种方案,并不是很理想。而这里直接将对象集合直接绑定到数据显示控件,给我指明一条出路。其实,在PetShop4.0就是利用这一点,绑定ICollection或者IList。简单明了。
一个简单的用户类,包含两个公共属性。
程序代码

usingSystem;  usingSystem.Data;  //////SummarydescriptionforUser  ///publicclassUser  {  privatestring_Name;  publicstringName  {  get{return_Name;}  set{_Name=value;}  }  privateint_Age;  publicintAge  {  get{return_Age;}  set{_Age=value;}  }  publicUser()  {  //  //TODO:Addconstructorlogichere  //  }  publicUser(stringname,intage)  {  _Name=name;  _Age=age;  }  }

绑定对象集合:
IList
程序代码

privatevoidBindData()    {    Useruser1=newUser("Jim",21);    Useruser2=newUser("Tom",23);    Useruser3=newUser("Bluce",33);    Useruser4=newUser("Mary",18);      IListlist=newList();    list.Add(user1);    list.Add(user2);    list.Add(user3);    list.Add(user4);      Repeater1.DataSource=list;    Repeater1.DataBind();    }

对应的Repeater绑定对象的公共属性:
C#数据绑定控件程序代码

  
姓名th>
年龄

以上就是C#数据绑定控件中的DataSource属性浅谈的内容,更多相关内容请关注PHP中文网(www.php.cn)!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1431953.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月17日 05:57:54
下一篇 2025年12月17日 05:59:32

相关推荐

发表回复

登录后才能评论
关注微信