日期:2014-05-18  浏览次数:20482 次

通过点击站点地图SiteMapPath 如何传值给另一个页面?
因为在a页面有   String   Temp   =   Request.Params[ "iCustomerId "]

我在b页面要点击站点地图返回a时必须传值给a。否则会因为Temp为空而无法近入a。但是SiteMapPath无事件可写。

老大们,可有解决的办法。通过点击站点地图链接传值给a;
 
a.aspx?iCustomerId=...




------解决方案--------------------
动态编辑内存里的SiteMapPath
在Page_Load里加入如下代码
SiteMap.SiteMapResolve += new SiteMapResolveEventHandler(this.ModifyPath);
声明一个方法
private SiteMapNode ModifyPath(object sender, SiteMapResolveEventArgs e)
{
SiteMapNode currentNode = SiteMap.CurrentNode.Clone(true);
SiteMapNode modifyNode = currentNode;

modifyNode.Url = "http://www.bbb.net ";
modifyNode.Title = "bbb ";

if ( (modifyNode = modifyNode.ParentNode) != null)//编辑父节点
{
modifyNode.Url = "http://www.aaa.net ";
modifyNode.Title = "aaa ";
}

return currentNode;
}
自己看着用吧
------解决方案--------------------
只是获得url值的话可以用它: Request.Querystring[ "iCustomerId "]