“面包屑导航”——SiteMapPath控件的使用,ASP.NET

最近在博客里写了一些日志,主要都是我在实际编程过程中遇到的问题。问题出现后,先自己推敲,搞不定的,就上网去搜,再就是请教同学、同事,从中获益匪浅,也很难得!现在把感觉比较实用的一些功能代码之类的发布到网上去,发觉自己在网上收的不全面,有的根本就不能用,我呢是把我的项目代码给贴出来的,绝对经过实践的!在此希望能帮到人,也方便以后自己再用到!好了,下面就是代码了!

首先要创建一个站点地图Web.sitemap,最好在根目录下,Web.sitemap中的代码如下,为简便些,省去了一部分代码:

<?xml version="1.0" encoding="utf-8" ?>

<siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0" >

<siteMapNode url="~/Admin/Admin.aspx" title="首页" description="首页描述">

<siteMapNode url="~/Admin/ChangePwd.aspx" title="频道1" description="频道1描述" />

<siteMapNode url="~/Admin/ChangePhoto.aspx" title="频道2" description="频道2描述" />

</siteMapNode>

</siteMap>

站点地图里可随意添加,多少都行,很多的话,可得理清节点的“父子关系”哦!

然后就是配置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>

<!--红色部分的名称可一定得一样哈!蓝色部分也不能少,不然程序找不到地图!-->

这样,就算配置好了,下面就是具体应用了

我的是修改密码页,那么就在~/Admin/ChangePwd.aspx页面里的头部(一般都是现实在顶部)

插入控件<asp:SiteMapPath>控件,代码是:

<asp:SiteMapPath runat="server"></asp:SiteMapPath>

至此,已经全部OK了!至于网上有的说使用<asp:SiteMapDataSource>控件绑定数据,本人经实践,觉得完全没必要!

其实挺简单的,总结来说,就是先创建一个站点地图Web.sitemap,把所有用到的节点都写进去,

然后就是配置Web.Config,把站点地图的名称给写进去!

最后就是实际应用了,要在每个可能使用到导航的页面里添加一个<asp:SiteMapPath>控件就行了!