在ASP.NET MVC 如此火热的时期,我竟然不适时宜的谈起ASP.NET ,恐怕会引来一阵嘲笑。最为无趣的是,讲解的竟然还是其中的一个控件。oh~~ my god!my out! ^_^
SiteMapPath 控件简介
SiteMapPath 控件是一种站点导航控件,反映了SiteMap 对象提供的数据。它提供了一种定位站点的方式,动态显示当前页在站点中的相对位置,并提供了从当前页向上跳转的快捷方式。
SiteMapPath 控件直接使用了站点地图(.sitemap)中配置的数据(无需通过SiteMapDataSource数据源控件)。
示例一:SiteMapPath 控件的简单使用
1、创建 Web.sitemap 文件
在您的网站的根目录中创建一个名为 Web.sitemap 的文件。
打开此 Web.sitemap 文件,并添加下面的代码:
"""""""" """
注意:
○ 如果在url 属性值中,列出了不存在的 URL 或列出了重复的 URL,将导致请求Web 应用程序将失败。
○ 如果在url 属性值中,添加了相关参数(如:Simple Navigation ControlsUsing SiteMapPathUsing TreeViewUsing MenuUsing a Horizontal Menu
注意:
○ 只要在页面上拖放""""""""" """ "
2、添加子站点,并创建相应的子目录的站点地图文件(News.sitemap),其代码如下:
"""""""" """
注意:子站点地图中,url 属性值一定要使用以“~/”快捷键开头的应用程序根目录路径,如:""""""""
注意:: System.Web.UI.(SiteMap_SiteMapResolve);Label1.Text = Request.QueryString[currMapNode = ;: currMapNode.Title = "SQL 主题"; break;default: currMapNode.Title = "无主题"; break;}return currMapNode;}else{return SiteMap.CurrentNode;}}}
注意:
○ 这里是通过在模板页中给SiteMap 对象添加事件:SiteMap.SiteMapResolve += new SiteMapResolveEventHandler 以实现对站点地图的动态修改,该事件将在当访问SiteMap.CurrentNode 属性时出发;
○ SiteMap.CurrentNode 对象是只读的,我通过对该对象的克隆来复制一个SiteMapNode 节点,并修改其Title 属性值。
示例下载