ASP.NET水平重复动态数据主菜单?

时间:2010-07-08 18:42:45

标签: asp.net gridview dynamic-data

默认情况下,默认的ASP.NET动态数据模板使用GridView显示垂直重复的菜单。这看起来不太好。我想知道是否存在(a)使网格视图水平重复的方法或(b)使用允许水平重复的另一个控件。

2 个答案:

答案 0 :(得分:1)

可以使用DataList :) 您设置ItemTemplate以指定项目的显示方式,并将RepeatDirection设置为Horizo​​ntal,将其绑定到Dynamic数据源,您就完成了:D

此外,您可以通过RepeatColumns属性指定要重复的列数。

这个页面(向下滚动)有一些关于如何使用DataList的例子

http://msdn.microsoft.com/en-us/library/7efxhktc.aspx

答案 1 :(得分:1)

这是一个简单的过程。在我们的代码隐藏文件中,我们必须连接动态数据连接,如下所示:

    Menu1.DataSource = visibleTables
    Menu1.DataBind()

然后我们创建一个像这样的DataList:

<asp:DataList ID="Menu1" runat="server" 
      CellPadding="3" GridLines="Vertical" 
      HorizontalAlign="Center" CssClass="DDGridView" RepeatDirection="Horizontal"   
      ItemStyle-CssClass="td" HeaderStyle-CssClass="th" >
<ItemTemplate>
    <asp:DynamicHyperLink ID="HyperLink1" runat="server"><%# Eval("DisplayName")%></asp:DynamicHyperLink>
</ItemTemplate>
</asp:DataList>

您可以看到我已经(暂时)使用默认gridview中的css类来提供统一的布局/显示元素。