代码:
.aspx
<asp:Repeater ID="list" runat="server" OnItemDataBound="list_ItemDataBound" OnItemCreated="list_ItemCreated"> <HeaderTemplate> <table width="636" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"><tr> </HeaderTemplate> <ItemTemplate> <td height="24" align="center" bgcolor="#FFFFFF"><%#Eval("ID") %></td> </ItemTemplate> <FooterTemplate> </tr></table> </FooterTemplate> </asp:Repeater>
.aspx.cs
protected void Page_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Columns.Add("id", typeof(string)); for (int i = 1; i <=8; i++) { DataRow dr = dt.NewRow(); dr[0] = i.ToString(); dt.Rows.Add(dr); } list.DataSource = dt; list.DataBind(); dt.Dispose(); } protected void list_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (i % 6 == 0 && i > 0 && i != list.Items.Count) { e.Item.Controls.Add(new LiteralControl("</tr><tr>")); } if (e.Item.ItemType == ListItemType.Footer && list.Items.Count % 6 != 0) { LiteralControl li = e.Item.Controls[0] as LiteralControl; string oldHTML = li.Text; string newHTML = String.Empty; for (int c = list.Items.Count % 6; c < 6; c++) { newHTML += " <td height=\"24\" align=\"center\" bgcolor=\"#FFFFFF\"> </td> "; } li.Text = newHTML + oldHTML; } i++; }