Проблема корневого узла, связывающая меню DevExpress с SiteMap - PullRequest
1 голос
/ 21 ноября 2010

У меня есть ASPxMenu , привязанный к моему Web.sitemap файлу через стандартный asp:SiteMapDataSource элемент управления. Меню должно быть горизонтальным, как мое главное меню. Меню и пункты меню:

<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 &amp; Services"  description="Main product catalogue."></siteMapNode>
    <siteMapNode url="~/About.aspx" title="About Us"  description="Company profile." />
  </siteMapNode>
</siteMap>

Моя проблема в том, что когда меню отображается, я получаю только корневой элемент, а все нужные элементы находятся в выпадающем меню под ним. Я не хочу корневой элемент, и я хочу, чтобы все остальные элементы были расположены в горизонтальном меню. В моем собственном коде для моих собственных меню у меня есть флаг RenderRootNode, но здесь это не вариант.

Если я использую ванильный элемент управления 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 . Может быть, это просто потеряно среди всех миллионов?

1 Ответ

0 голосов
/ 22 ноября 2010

Установите для свойства siteMapDataSource.ShowStartingNode значение false, чтобы решить эту проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...