首页 > 编程 > C# > 正文

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

2020-04-24 21:09:21
字体:
来源:转载
供稿:网友

有的时候,你在编程进入一定阶段,进一步提升很困难的境况之下,不妨回过头来看看基础的东西,或许你会有新的受益,或许能够真正的体会到孔夫子所谓的“温故而知新”的真正内涵。
常用的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的具体应用。
<1>绑定DataTable,一般都是从数据库取出数据,然后直接进行绑定,具体的数据库操作的逻辑不再提供。想必大家都已经非常熟悉。绑定DataView与这个类似。
程序代码

代码如下:
privatevoidBindData() 

//通过业务逻辑,直接调用数据库中的数据 
DataTablenTable=getTable(); 

Repeater1.DataSource=nTable; 
Repeater1.DataBind(); 
}

HTML代码
C#数据绑定控件程序代码
代码如下:
<asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server">
<HeaderTemplate>
<table>
<tr>
<thscopethscope="col">
姓名th>
<th>
年龄th>
<tr>
<HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<%#Eval("Key")%>
<td>
<td>
<%#Eval("value")%>
<td>
<tr>
<ItemTemplate>
<FooterTemplate>
<table><FooterTemplate>
<asp:Repeater>

<2>绑定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适当改变
程序代码
代码如下:
<asp:RepeaterIDasp:RepeaterID="Repeater1"runat="server">
<HeaderTemplate><table><tr><thscopethscope="col">姓名<th><tr><HeaderTemplate>
<ItemTemplate><tr><td><%#Container.DataItem%><td><tr><ItemTemplate>
<FooterTemplate><table><FooterTemplate>
<asp:Repeater>

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

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表