用户控件(二)--常见4 种路径问题解决:
二.路径:
1、问题: 添加到用户控件中的图片以及超链接 都会有固定的路径,当将用户控件
用到其他页面中后,对应的页面路径需要发生变化,否则无法正常作用显示;
解决: 在添加到用户控件中的 HTML 标记或者标准控件中添加:
runat= server id=“id名”;
这样服务端会根据使用情况自动更正图片或者超链接路径;
注意: 超链接可以直接使用标准控件:Hyperlink 它里面直接带 runat=server;
2、问题?样式表中值的路径:(例)background-image:url(路径)
解决: 不要使用内联样式,使用外部样式表来控制图片路径。
3.外部资源路径 -
问题??用户控件中引入外部脚本文件。更改使用路径后的怎么使用
解决思路: 1、将引用的路径在cs中进行转化
2、转化完毕后将新路径返回,
使用 string path = ResoveClientUrl("服务器端路径"); //返回的是客户端对应的路径
1、用户控件中引用代码:
<script src="<%= ShowScriptPath() %>" ></script> //将引用的路径通过调用函数转化
2、C#代码:代码转化:
public string ShowScriptPath()
{
string path = "Scripts/JavaScript.js";
path = this.ResolveClientUrl(path);
return path;
}
4.C#代码的调用路径
问题:当用户控件中有跳转路径:Response.Redirect("页面路径");
解决:使用应用程序路径的根来解决(相对路径)
Response.Redirect("~/Default.aspx");