mysitemappath.ascx.cs
来自「该项目中对 SQLHelper 类进行了简单封装」· CS 代码 · 共 82 行
CS
82 行
/*
* MySiteMapPath.ascx.cs @Microsoft Visual Studio 2008 <.NET Framework 3.5>
* AfritXia
* 2008-01-30
*
* Copyright(c) http://www.AfritXia.NET/
*
*/
using System;
using System.Web;
namespace NET.AfritXia.MyHome.HomeStart.PageCtrls
{
/// <summary>
/// 自定义站点地图控件
/// </summary>
public partial class MySiteMapPath : System.Web.UI.UserControl
{
/// <summary>
/// 控件初始化函数
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Init(object sender, EventArgs e)
{
this.m_aspSiteMapPath.Provider.SiteMapResolve += new SiteMapResolveEventHandler(this.Provider_SiteMapResolve);
}
/// <summary>
/// 修改站点地图数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <returns></returns>
private SiteMapNode Provider_SiteMapResolve(object sender, SiteMapResolveEventArgs e)
{
if (e.Provider.CurrentNode == null)
return null;
SiteMapNode currNode = e.Provider.CurrentNode.Clone(true);
SiteMapNode tempNode = currNode;
if (this.IsVisitPage("ArticleView.aspx"))
{
if (tempNode != null)
{
// 设置导航链接
tempNode.Url += String.Format("?ArticleUID={0}", this.GetArticleUID());
}
}
return currNode;
}
/// <summary>
/// 获取论坛主题 ID
/// </summary>
/// <returns></returns>
private int GetArticleUID()
{
return Convert.ToInt32(HttpContext.Current.Request.QueryString["ArticleUID"]);
}
/// <summary>
/// 是否正在浏览指定页面
/// </summary>
/// <param name="pageName">页面名称</param>
/// <returns></returns>
private bool IsVisitPage(string pageName)
{
// 以 '/' 分割文件路径
string[] tempStrings = HttpContext.Current.Request.FilePath.Split('\\', '/');
// 获取请求页面名称
string requestPage = tempStrings[tempStrings.Length - 1];
// 比较页面名称
return String.Compare(requestPage, pageName, true) == 0;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?