ASP Repeater,拆分成列?

时间:2011-06-29 09:50:43

标签: asp.net css

我正在使用.net编写的网站,我不知道它是如何工作的,我有以下代码..

<ul id="mega"><li><a href="#">Products</a><div> 
    <asp:Repeater ID="RT_Category" runat="server">
        <ItemTemplate>
            <h2><%# DataBinder.Eval(Container.DataItem, "Category")%></h2>
            <asp:Repeater ID="RT_SubCategory" runat="server" 
                DataSource='<%# DataBinder.Eval(Container.DataItem, "SubCat") %>'>
                <HeaderTemplate><p></HeaderTemplate>
                <ItemTemplate>
                    <a href='<%# DataBinder.Eval(Container.DataItem, "LinkS") %>'>
                    <%# DataBinder.Eval(Container.DataItem, "SubcatName")%></a>
                </ItemTemplate>
                <FooterTemplate></p></FooterTemplate>
            </asp:Repeater>
        </ItemTemplate>
    </asp:Repeater>
</div></li></ul>

此代码输出一个产品类别列表,我的问题是它将它们列在一个巨大的列表中,但是,是否有可能以某种方式包装每5条记录?

4 个答案:

答案 0 :(得分:3)

您可以尝试使用CSS,inline-blockfloat: left

<ul id="mega"><li><a href="#">Products</a><div> 
    <asp:Repeater ID="RT_Category" runat="server">
        <ItemTemplate>
         <div style="display: inline-block; width: 25%">
            <h2><%# DataBinder.Eval(Container.DataItem, "Category")%></h2>
            <asp:Repeater ID="RT_SubCategory" runat="server" 
                DataSource='<%# DataBinder.Eval(Container.DataItem, "SubCat") %>'>
                <HeaderTemplate><p></HeaderTemplate>
                <ItemTemplate>
                    <a href='<%# DataBinder.Eval(Container.DataItem, "LinkS") %>'>
                    <%# DataBinder.Eval(Container.DataItem, "SubcatName")%></a>
                </ItemTemplate>
                <FooterTemplate></p></FooterTemplate>
            </asp:Repeater>
          </div>
        </ItemTemplate>
    </asp:Repeater>
</div></li></ul>

答案 1 :(得分:1)

以下文章可能有所帮助:

Paging with Repeater control in ASP.NET

答案 2 :(得分:0)

虽然我已经看到了使用Repeater来实现此功能的示例,但没有一个是漂亮的。我建议查看DataList,它具有内置属性来控制重复/列。

DataList.RepeatColumns Property

答案 3 :(得分:0)

Akram的回答很适合你的情况。然而,转发器确实看起来不错。我建议使用datalist,因为它更可定制,甚至可以按列输出数据。请参考此链接:Showing Multiple Records per Row with the DataList Control