加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

从ASP.NET中的web.sitemap文件构建菜单

发布时间:2020-12-16 03:55:19 所属栏目:asp.Net 来源:网络整理
导读:我已经开始了一个新的ASP.NET 4 WebForm应用程序.默认情况下,Site.Master文件包含以下菜单: asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal" Items asp:MenuIte
我已经开始了一个新的ASP.NET 4 WebForm应用程序.默认情况下,Site.Master文件包含以下菜单:

<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false"   IncludeStyleBlock="false" Orientation="Horizontal">
  <Items>
    <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/>
    <asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/>
  </Items>
</asp:Menu>

此菜单包含两个块:“Home”和“About”.我喜欢这种结构.但是,我想根据Web.sitemap文件的内容填充NavigationMenu.这时,这个文件看起来像这样:

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
  <siteMapNode>
    <siteMapNode url="/Default.aspx" title="Home"  description=""></siteMapNode>
    <siteMapNode url="/Products/List.aspx" title="Products" description=""></siteMapNode>
  </siteMapNode>
</siteMap>

我将NavigationMenu代码更改为如下所示:

<asp:SiteMapDataSource ID="mySiteMapDataSource" runat="server" />
<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" DataSourceID="mySiteMapDataSource" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal" />

我的问题是,这种方法创建了一个代表菜单的小块.当用户将鼠标悬停在此时,两个子菜单项将显示“Home”和“Products”.奇怪的是,web.sitemap文件只允许一个siteMapNode作为siteMap元素的子节点.我如何使“Home”和“Products”以“Home”和“About”的方式出现,同时让我灵活地使用站点地图?

谢谢!

解决方法

对我来说ShowStartingNode =“false”效果更好.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读