gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-04 15:15:43 25 4
gpt4 key购买 nike

我已经启动了一个新的 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>

此菜单包含两个 block :“主页”和“关于”。我喜欢这种结构。但是,我想填充 NavigationMenu基于我的 Web.sitemap 文件的内容。此时,该文件如下所示:
<?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" />

我的问题是,这种方法创建了一个代表菜单的小块。当用户将鼠标悬停在其上时,会出现两个子菜单项“主页”和“产品”。奇怪的是,web.sitemap 文件只允许一个 siteMapNode作为 siteMap 的 child 元素。如何使“主页”和“产品”以与“主页”和“关于”相同的方式出现,同时让我可以灵活地使用站点地图?

谢谢!

最佳答案

对我来说 ShowStartingNode="false"效果更好。

关于asp.net - 从 ASP.NET 中的 web.sitemap 文件构建菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3969165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com