簡體   English   中英

如何從asp.net中的web.sitemap創建水平菜單

[英]how to create a horizontal menu from web.sitemap in asp.net

我試圖從web.site map創建水平站點菜單。但是不幸的是,它顯示為第一個根節點,然后是三個父節點,然后分別是每個子節點。但是我想要以下結構,例如前四個主菜單Home > Services > Products > Company然后這些父菜單的子菜單應顯示在每個人的下方,例如,如果我將光標懸停在“ Services ,則應顯示子菜單Web Designs >Website Development等;對於產品,則應顯示HTML Metatag Extractor ,Apartment Management System等我該怎么做。在現有工作中,它像第一個單個根節點Home一樣顯示,如果您將鼠標懸停在它上則顯示Services,Products,Company,則每個子節點對應

以下是我做過的工作web.sitemap是

<?xml version="1.0" encoding="utf-8" ?>
<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
  <siteMapNode url="index.aspx" title="Home"  description="Home">
    <siteMapNode url="Services.aspx" title="Services"  description="">
      <siteMapNode url="webdesign.aspx" title="Web Designs"  description="" />
      <siteMapNode url="websitedevelopment.aspx" title="Website Development"  description=""/>
      <siteMapNode url="cmscustomization.aspx" title="CMS Customization"  description="" />
      <siteMapNode url="softwaredevelopment.aspx" title="Software Development"  description="" />
      <siteMapNode url="internetmarketing.aspx" title="Internet Marketing"  description="" />
      <siteMapNode url="mobiledevelopment.aspx" title="Mobile Development"  description="" />
      <siteMapNode url="hostingsolutions.aspx" title="Hosting Solutions"  description="" />
    </siteMapNode>
    <siteMapNode url="products.aspx" title="Products"  description="" >
      <siteMapNode url="tagxtor.aspx" title="HTML Metatag Extractor"  description="" />
      <siteMapNode url="ams.aspx" title="Apartment Management System"  description="" />
      <siteMapNode url="cgnp.aspx" title="Closed Group Network Portal"  description="" />
      <siteMapNode url="ribbon.aspx" title="Retail Management System"  description="" />
    </siteMapNode>
    <siteMapNode url="company.aspx" title="Company"  description="" >
      <siteMapNode url="aboutus.aspx" title="About Us"  description="" />
      <siteMapNode url="team.aspx" title="Our Team"  description="" />
      <siteMapNode url="career.aspx" title="Work With Us"  description="" />
      <siteMapNode url="contactus.aspx" title="Contact Us"  description="" />
    </siteMapNode>
  </siteMapNode>
</siteMap>

HTML代碼

 <asp:Menu ID="Menu1" runat="server" StaticEnableDefaultPopOutImage="false" Orientation="Horizontal" DataSourceID="SiteMapDataSource1">

 <asp:SiteMapPath ID="SiteMapPath1"   runat="server" PathSeparator=">"></asp:SiteMapPath>

<asp:SiteMapDataSource ID="SiteMapDataSource1"  runat="server" />

當前設置方式中,“首頁”是頂部節點,“服務”,“產品”和“公司”位於其下方。

您將需要執行以下操作:

<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >
   <siteMapNode url="" title="Top Level"  description="Top Level">
       <siteMapNode url="Home.aspx" title="Home"  description="" />
       <siteMapNode url="Services.aspx" title="Services"  description="" />
       <siteMapNode url="Products.aspx" title="Products"  description="" />
       <siteMapNode url="Company.aspx" title="Company"  description="" />
   </siteMapNode>
</siteMap>

在您的SiteMapDataSource中,您需要添加一些新屬性

<asp:SiteMapDataSource ID="SiteMapDataSource1"  runat="server" StartingNodeOffset="0" ShowStartingNode="false" />

對SiteMapDataSource的更改將忽略“頂級節點”,並顯示其下的4個節點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM