<asp:Repeater runat="server" id="repeater1" OnItemDataBound="Repeater1_ItemDataBound"> <HeaderTemplate>
<table width="100%" border=0 align="center"><tr>
</HeaderTemplate>
<ItemTemplate>
<td><%#Eval("数据")%></td>
</ItemTemplate>
<FooterTemplate>
</tr></table>
</FooterTemplate>
</asp:Repeater>
.Cs代码
protected int i=1;
protected void Repeater1_ItemDataBound(object src,RepeaterItemEventArgs e)
{
if(i%3==0){
e.Item.Controls.Add(new LiteralControl("</tr><tr>"));
}
i++;
}
================================
以上代码可以有,但有问题,如果正好只有第三行呢?结果就多了一个空<tr></tr>
Repeater只是一个迭代,不知道总数,所以无法进行相关的补td等动作,所以建议使用DataList。
如果只有两行,可以考虑使用<ItemTemplate><AlternatingItemTemplate>来实现,但同样的代码维护两次也是不好的实践~~