<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Repeater.aspx.cs" Inherits="FileUpload自动上传文件.Repeater" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <table > <tr> <th>标题1</th> <th>标题2</th> <th>标题3</th> <th>标题4</th> </tr> <asp:Repeater ID ="rptList" runat ="server" > <%-- <HeaderTemplate > <table > <tr> <th>标题1</th> <th>标题2</th> <th>标题3</th> <th>标题4</th> </tr> </HeaderTemplate>--%> <SeparatorTemplate > <tr> <td colspan ="4"><hr /></td> </tr> </SeparatorTemplate> <ItemTemplate > <tr> <td><%#DataBinder.Eval(Container.DataItem,"title1")%>1</td> <td><%#DataBinder.Eval(Container.DataItem, "title2")%></td> <td><%#DataBinder.Eval(Container.DataItem, "title3")%></td> <td><%#DataBinder.Eval(Container.DataItem, "title4")%></td> </tr> </ItemTemplate> <%--<FooterTemplate ></table></FooterTemplate>--%> <FooterTemplate > <tr> <td colspan ="4" style ="text-align :center;" >结尾</td> </tr> </FooterTemplate> </asp:Repeater> </table> </div> </form> </body> </html>
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; namespace FileUpload自动上传文件 { public partial class Repeater : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Columns.Add("title1"); dt.Columns.Add("title2"); dt.Columns.Add("title3"); dt.Columns.Add("title4"); for (int i = 1; i < 5; i++) { DataRow row = dt.NewRow(); row["title1"] = "title1"+i; row["title2"] = "title2" + i; row["title3"] = "title3" + i; row["title4"] = "title4" + i; dt.Rows.Add(row); } rptList.DataSource = dt; rptList.DataBind(); } } }
AlternatingItemTemplate
与 ItemTemplate 元素类似,但在 Repeater 控件中隔行(交替项)呈现一次。通过设置 AlternatingItemTemplate 元素的样式属性,可以为其指定不同的外观。
FooterTemplate
在所有数据绑定行呈现之后呈现一次的元素。典型的用途是关闭在 HeaderTemplate 项中打开的元素(使用 </table> 这样的标记)。
注意 FooterTemplate 不能是数据绑定的。
HeaderTemplate
在所有数据绑定行呈现之前呈现一次的元素。典型的用途是开始一个容器元素(如表),或者用于设置列名注意 HeaderTemplate 项不能是数据绑定的。
ItemTemplate
为数据源中的每一行都呈现一次的元素。若要显示 ItemTemplate 中的数据,请声明一个或多个 Web
服务器控件并设置其数据绑定表达式以使其计算为 Repeater 控件(即容器控件)的 DataSource
中的字段。以下示例显示一个示例声明,它显示包含 Label 控件中的第一个名称的字段。
First Name:
<asp:Label runat="server"
Text="<%# Container.DataItem.FirstName %>" />
SeparatorTemplate
在各行之间呈现的元素,通常是分行符(<br> 标记)、水平线(<hr> 标记)等。
注意 SeparatorTemplate 项不能是数据绑定的。
摘抄于http://www.wzsky.net/html/Program/net/28134.html
Repeater联合UpdatePanal使用,有时候为了局部更新就得使用UpdatePanal
注:UpdatePanal要放在<table></table>外面,每次都应更新整个table,否则会有意想不到的问题
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Repeater.aspx.cs" Inherits="FileUpload自动上传文件.Repeater" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <asp:ScriptManager runat ="server" ></asp:ScriptManager> <div> <asp:Button ID ="btnSearch" runat ="server" Text ="刷新" onclick="btnSearch_Click" /> </div> <div> <asp:UpdatePanel ID ="UpdatePanel1" runat ="server" RenderMode ="Inline" UpdateMode ="Conditional" > <ContentTemplate > <table > <tr> <th>标题1</th> <th>标题2</th> <th>标题3</th> <th>标题4</th> <th>时间</th> </tr> <asp:Repeater ID ="rptList" runat ="server" > <SeparatorTemplate > <tr> <td colspan ="4"><hr /></td> </tr> </SeparatorTemplate> <ItemTemplate > <tr> <td><%#DataBinder.Eval(Container.DataItem,"title1")%>1</td> <td><%#DataBinder.Eval(Container.DataItem, "title2")%></td> <td><%#DataBinder.Eval(Container.DataItem, "title3")%></td> <td><%#DataBinder.Eval(Container.DataItem, "title4")%></td> <td><%#DateTime.Now.ToString()%></td> </tr> </ItemTemplate> </asp:Repeater> </table> </ContentTemplate> <Triggers > <asp:AsyncPostBackTrigger ControlID ="btnSearch" EventName ="click" /> </Triggers> </asp:UpdatePanel> </div> </form> </body> </html>
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data; namespace FileUpload自动上传文件 { public partial class Repeater : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindRptData(); } } protected void btnSearch_Click(object sender, EventArgs e) { BindRptData(); } private void BindRptData() { DataTable dt = new DataTable(); dt.Columns.Add("title1"); dt.Columns.Add("title2"); dt.Columns.Add("title3"); dt.Columns.Add("title4"); for (int i = 1; i < 5; i++) { DataRow row = dt.NewRow(); row["title1"] = "title1"+i; row["title2"] = "title2" + i; row["title3"] = "title3" + i; row["title4"] = "title4" + i; dt.Rows.Add(row); } rptList.DataSource = dt; rptList.DataBind(); } } }