repeater用法一步一步详讲,用来绑定和显示数据信息
估計要分兩部:
?一部分UI部分:在一個div里面可以寫個repeater服務器控件,用來橫排顯示需要的數據;<asp:Repeater id="" runnat="servece" ....................>
首先,repeater這個控件,有head,items,foot三個部分,不一定全用。
然后,布局:headtemplate里面寫上顯示的字段欄,<th align=字段文字位置,居中是center ?class=樣式>字段名稱</th>
? ? ? ? 若干字段后,就改寫顯示數據部分,也就是itemtemplate,這個數據段書寫類似head,但有個地方要注意就是<%#Eval('xxxx')%>這部分,?最好寫這個數據字段的列要對應headtemplate的字段列,可以這樣寫<td align=center ><asp:label id="xxx" runate ="service" Text='<%#Eval("xianshiID")%>'></asp:label></td>,這里再次說明一下,這個Eval部分是執行在后臺,后臺給ui顯示賦值來著。
? ? ? ? ? 舉例:<td align="center"><asp:Label ID="Value1" runat="server" Text='<%#Eval("Value") %>'></asp:Label> </td>
? ? ? ? 如果沒有數據,可以在footertemplate中添加一行visible='<%#Repeate.Items.Count==0 %>'屬性,然后添加<tr><td align=xx>沒有數據</td></tr>;
? ? ? ??
? ? 二部分后臺部分:這就是Repeater控件UI頁顯示,前面的主要部分,下面說說后臺要做的
? ?在后臺,你需要把數據跟Repeater控件綁定才能顯示數據,我們可以按下面來做:
? ? ? ? A:在頁面加載的時候,實現RepeaterName.source = 一個datatable類型的返回(寫一個返回函數最好),然后是 ? ? ? ? ? ? ? RepeaterNmae.DataBind();
? ? ? ? B:
? ? ? ? ? ? ? ? ? B1:?在這個datatable類型的返回中,我們首先要寫一個datatable類型的函數實現欄目的顯示字段,
? ? ? ? ? ? ? ? ? ? ? ? ? ?DataTable One = new DataTable();
? ? ? ? ? ? ? ? ? ? ? ? ? ?One.Columns.Add("xianshiID");//注意與頁面Eval中的ID對其
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?return ? One;//暫定為返回給TableStart
? ? ? ? ? ? ? ? ??B2: 然后再這個返回的DataTable容器中寫,然后
? ? ? ? ? ? ?如果數據比較多,可以循環寫:DataRow ro =?TableStart.newRow();//這里就新產生了datatabel類型的One的 ? ? 一行,對應頁面上的一列,
? ? 然后,我們需要將數據庫讀出的一行數據填寫到這個ro行里面,
? ? ? ? ? ? ? ? ? ? ? ? ? ?ro[0] = 我數據讀出來的一個數據;
? ? ? ? ? ? ?B3: 然后,必須是TableStart來用添加到里面,TableStart.add.Row(ro);
? ? ? ? ? ? 最后經過循環,tablestart已經將所要顯示的數據都存起來了,然后return回去,就是一個datatable類型的返 ? ? ? ? ?回,這個就是綁定給Repeater的數據,數據源;
? ?三部分操作部分:
? ? ? ? A:關于Repeater的數據刪除操作,首先要在Ui中寫上刪除按鈕
? ? ? ? ? ? ? ? ? 在head,itemtemplate,foot三部分的itemtemplate部分最后添加一列
<td align=xxx >
? ? ? ? ? ? ?<asp:linkbutton id=xxx Text="刪除" runate="server" CommanName="nameYouself" ?CommanAugumnet='關鍵字,一般用<%#Eval("ID")+"&"+Eval("ID2")%>來寫,主要是后臺跟蹤傳遞而已' >
? ? ? ? ? ? </asp:linkbutton>
</td>
? ? ? ? ?B:
? ? ? ? ? ?在后臺用RepeaterName_ItemsCommand(object source,RepeaterCommandEventArgs e)
? ? ? ? ? ?{
? ? ? ? ? ? ? ? ? ?try
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? if (e.CommandName == "Link")
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? string[] key = e.CommandArgument.ToString().Split('&');? ? ? ? ? ? ? ? ??? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? xxxxxxxxxx其它數據操作,刪除操作;
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ?catch?{?? }
? ? ? ? ? ? }
? ? ? ? 上面的代碼生成是雙擊repeater產生的,也即是<asp:Repeater ID="RepeaterShow" runat="server" ?..........
? ? ? ? ? ? onitemcommand="RepeaterShow_ItemCommand">也就是repeater的onitemcommand事件;
總結
以上是生活随笔為你收集整理的repeater用法一步一步详讲,用来绑定和显示数据信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: datalist,Repeater和Gr
- 下一篇: 数据绑定控件之Repeater