今天使用menu控件发现一个疑问。
当我在aspx写死显示内容的时候,大概如下<Items>
    <asp:MenuItem Text="1" Value="1">
      <asp:MenuItem Text="1-1" Value="1-1"></asp:MenuItem>
      <asp:MenuItem Text="1-2" Value="1-2"></asp:MenuItem>
    </asp:MenuItem>
    <asp:MenuItem Text="2" Value="2">
      <asp:MenuItem Text="2-1" Value="2-1"></asp:MenuItem>
    </asp:MenuItem>
    <asp:MenuItem Text="3" Value="3">
      <asp:MenuItem Text="3-1" Value="3-1"></asp:MenuItem>
    </asp:MenuItem>
</Items>设置Orientation="Horizontal" StaticDisplayLevels="1"的时候,显示是正常的。但是设置StaticDisplayLevels="2",按说应该是两级目录显示,但是结果所有的菜单都显示在一行。
样子大概是:1 1-1 1-2 2 2-1 3 3-1 为何不是两行显示啊??

解决方案 »

  1.   

    StaticDisplayLevels="1"的时候,二级目录就是鼠标点击后动态显示,不点击就不显示,这个时候是显示在下方的。但是="2"的时候,就全部显示在一行了。
      

  2.   

    整个页面代码<html xmlns="http://www.w3.org/1999/xhtml" >
        <head id="Head1" runat="server">
            <title>ASP.NET Example</title>
                <style type="text/css">
                .IE8Fix 
                {    
                    z-index: 1000; 
                } 
            </style>
        </head>
    <body>
            <form id="form1" runat="server">        <asp:Menu ID="Menu1" runat="server" BackColor="#E3EAEB" 
                Font-Names="Verdana" Font-Size="0.8em" 
                ForeColor="#666666" Orientation="Horizontal" StaticDisplayLevels="2" 
                StaticSubMenuIndent="10px" ItemWrap="True">
                <StaticMenuItemStyle HorizontalPadding="5px" VerticalPadding="2px" CssClass="IE8Fix" />
                <StaticHoverStyle BackColor="#666666" ForeColor="White" />
                  <Items>
                    <asp:MenuItem Text="1" Value="1">
                      <asp:MenuItem Text="1-1" Value="1-1"></asp:MenuItem>
                      <asp:MenuItem Text="1-2" Value="1-2"></asp:MenuItem>
                    </asp:MenuItem>
                    <asp:MenuItem Text="2" Value="2">
                      <asp:MenuItem Text="2-1" Value="2-1"></asp:MenuItem>
                    </asp:MenuItem>
                    <asp:MenuItem Text="3" Value="3">
                      <asp:MenuItem Text="3-1" Value="3-1"></asp:MenuItem>
                    </asp:MenuItem>
                  </Items>
            </asp:Menu>        </form>
        </body>
    </html>
      

  3.   

    别说了,,从来不用这些控件,,灵活不够,不能随心所欲做事,,,建议还是用div+js来实现吧
      

  4.   

      <asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" BackColor="#E3EAEB"
                        DynamicHorizontalOffset="2" Font-Names="Verdana" Font-Size="0.8em" ForeColor="#666666"
                        StaticSubMenuIndent="10px">  <asp:Menu  runat="server" ID="Menu1" MaximumDynamicDisplayLevels="4"
          Orientation="Horizontal" StaticDisplayLevels="2" StaticEnableDefaultPopOutImage="False"
        DynamicEnableDefaultPopOutImage="false" StaticSubMenuIndent="" ItemWrap="True">
            </asp:Menu>
      

  5.   

    我满怀希望的尝试了MENU.然后失望了..