有的時候,你在編程進入一定階段,進一步提升很困難的境況之下,不妨回過頭來看看基礎的東西,或許你會有新的受益,或許能夠真正的體會到孔夫子所謂的“溫故而知新”的真正內涵。
常用的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#數據綁定控件程序代碼
新聞熱點
疑難解答