很多时候如果我们用
DataList来控制显示的列数可能会破坏我们的布局,因为DataList
会新生成一个table标签。所以我们需要Repeater来显示。
下面为代码:注意红色部分应该和后台代码对应!
protected int i = 1;
protected void RepeaterSchoolList_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (i%4==0&&i>0)
{
e.Item.Controls.Add(new LiteralControl("</tr><tr>"));
}
i++;
}
<table align="center" cellpadding="0" cellspacing="0" width="900">
<tr>
<asp:Repeater ID="RepeaterSchoolList" runat="server" OnItemDataBound="RepeaterSchoolList_ItemDataBound">
<ItemTemplate>
<td width="257" height="30" align="left" valign="middle"><span class="STYLE8"><a href="College.aspx?id=<%#Eval("id") %>"><%#Eval("name") %></a></span></td>
</ItemTemplate>
</asp:Repeater>
</tr>
</table>