關於ASP.NET中麵包屑(SiteMapPath控制項)使用__.net

來源:互聯網
上載者:User
一、根據網站地圖Web.sitemap來顯示麵包屑(SiteMapPath控制項):   1.首先要建立一個網站地圖Web.sitemap,最好在根目錄下,如果已經建立,那麼直接在裡面增加你需要添加麵包屑的節點就行。SiteMapPath控制項由多個節點群組成,節點可分為以下3個類型:根節點、父節點、當前節點。網站地圖裡可隨意添加,多少都行,但是要理清節點的“父子關係”。Web.sitemap中的代碼如下:
<?xml version="1.0" encoding="utf-8"?><!--以下是麵包屑1  -->  <siteMap   xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0"><siteMapNode url="~/Index.aspx" title="首頁" description=""><siteMapNode url="~/Company.aspx" title="公司介紹" description="">      <siteMapNode url="~/1.aspx?" title="公司簡介" description="" />      <siteMapNode url="~/2.aspx?" title="公司目標" description="" />  </siteMapNode> <siteMapNode url="~/New.aspx" title="新聞中心" description=""> </siteMapNode> <siteMapNode url="~/Pruduct.aspx" title="產品中心" description=""> </siteMapNode> <siteMapNode url="~/Project.aspx" title="專案中心" description=""> </siteMapNode> <siteMapNode url="~/Join.aspx?" title="招聘英才" description="" > </siteMapNode> <siteMapNode url="~/About.aspx?" title="聯絡我們" description="" ></siteMapNode><!--結束上面的麵包屑1--> <!--不同aspx頁面的麵包屑2--><siteMapNode url="#" title="**" description=""><siteMapNode url="#" title="**" description="">            ......</siteMapNode>......</siteMapNode><!--結束上面的麵包屑2--></siteMap>
注意: a.如果在url 屬性值中,列出了不存在的 URL 或列出了重複的 URL,將導致請求Web 應用程式將失敗。 b.如果在url 屬性值中,添加了相關參數(如:url=”Second.aspx?id=1″),也有可能導致請求Web 應用程式將失敗。 c.在url 屬性值中,可以“~/”快速鍵開頭,該快速鍵表示應用程式根目錄。   2.插入控制項<asp:SiteMapPath>控制項,代碼是:
<asp:SiteMapPath ID="SiteMapPath1" runat="server"></asp:SiteMapPath>
只要在你需要添加麵包屑的aspx檔案的那個具體位置添加上以上這段代碼就可以實現。   3.關於麵包屑(SiteMapPath控制項)的一些屬性介紹: 我可以通過很多可用的屬性來控制麵包屑(SiteMapPath控制項)的表示以及單個的連結。下面的列表提供了這其中一部分屬性(更詳細的屬性參看MSDN): PathSeparator:讓你能夠用其他的字元作為連結的分隔字元,而不用預設的大於符號(>)。 PathDirection:讓你能夠按照從左至右的順序顯示路徑;也就是說,從當前結點開始,從該點向右移動(RootToCurrent),或者首先顯示當前節點,向右顯示到達根節點的路徑(CurrentToRoot)。 RenderCurrentNodeAsLink:用來表示當前節點是否被作為一個連結顯示出來。這是一個布爾值。 PathLevelsDisplayed:讓你能夠指定需要顯示的結構的層數。 ShowToolTips:用來表示當滑鼠移動到一個連結上時,是否顯示工具提示資訊。工具提示資訊在網站地圖檔案的節點描述屬性裡定義。 如:
<!--樣式1--> <asp:SiteMapPath ID="SiteMapPath1" Runat="server"> <PathSeparatorTemplate> <asp:Image ID="Image1" Runat="Server" Width="20" ImageUrl="uploadfiles/0022.GIF" /> </PathSeparatorTemplate> </asp:SiteMapPath> <!--樣式2--> <asp:SiteMapPath ID="SiteMapPath2" Runat="server" PathDirection="CurrentToRoot" PathSeparator=" <-- " > </asp:SiteMapPath> <!--樣式3--> <asp:SiteMapPath ID="SiteMapPath3" Runat="server" SkipLinkText="Skip Menu" RootNodeStyle-Font-Names="Verdana" RootNodeStyle-ForeColor="Orange" RootNodeStyle-BorderWidth=2 > </asp:SiteMapPath> <!--樣式4--> <asp:SiteMapPath ID="SiteMapPath4" Runat="server" PathSeparator=" :: "> </asp:SiteMapPath> 
  以下是關於一些網上資料的甄別:   1.網上有些資料說要配置Web.Config:
<system.web><siteMap defaultProvider="default" enabled="true"><providers><add name="default" type="System.Web.XmlSiteMapProvider" siteMapFile="Web.sitemap" securityTrimmingEnabled="true"/></providers></siteMap></system.web><!--"defaultProvider="default"和"name="default""必須一樣!siteMapFile="Web.sitemap"也不能少,不然程式找不到地圖!-->
但是我發現我做這個項目的時候的開發環境(Visual Studio 2010)是不用的,不知道其他開發環境是不是也一樣,也就寫在這供大家參考咯。   2.網上有些資料說使用<asp:SiteMapDataSource>控制項綁定資料,但是麵包屑(SiteMapPath控制項)有一個比較有意思的地方是,它不像Menu和TreeView控制項那樣需要使用SiteMapDataSource控制項。 SiteMapPath控制項在預設狀態下與網站地圖檔案綁定在一起(也就是說它被放在應用程式的根裡)。   二、在根網站地圖中添加子網站地圖檔來顯示麵包屑(SiteMapPath控制項): <。--待續-->

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.