我通过标准asp:SiteMapDataSource
控件将 ASPxMenu 绑定到我的 Web.sitemap 文件。菜单应该是水平的,作为我的主要顶级菜单。菜单和项目如下:
<dx:ASPxMenu ID="topMainMenu" runat="server" Orientation="Horizontal"
DataSourceID="siteMapDataSource" RenderMode="Lightweight">
</dx:ASPxMenu>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
<siteMapNode title="" >
<siteMapNode url="~/Default.aspx" title="Home" description="Home page."></siteMapNode>
<siteMapNode url="~/Products/Main.aspx" title="Products & Services" description="Main product catalogue."></siteMapNode>
<siteMapNode url="~/About.aspx" title="About Us" description="Company profile." />
</siteMapNode>
</siteMap>
我的问题是,当菜单呈现时,我只获得根项目,我想要的所有项目都在下面的下拉菜单中。我不想要根项目,我想要水平菜单中的所有其他项目。在我自己的菜单代码中,我有一个RenderRootNode标志,但这不是一个选项。
如果我使用像这样的vanilla ASP.NET Menu控件......
<asp:Menu ID="topMainMenu" runat="server" Orientation="Horizontal"
DataSourceID="siteMapDataSource" StaticDisplayLevels="2">
<LevelMenuItemStyles>
<asp:MenuItemStyle Font-Underline="False" Width="0px" />
</LevelMenuItemStyles>
</asp:Menu>
... StaticDisplayLevels="2"
属性设置可以解决此问题,但我无法在 DevExpress 菜单中找到此类设置。也许它只是在所有数百万人中丢失了?
答案 0 :(得分:0)
将siteMapDataSource.ShowStartingNode属性设置为false以解决此问题。