在母版页中链接

时间:2012-06-19 21:05:15

标签: c# asp.net master-pages

我如何制作位于母版页中的链接(按钮)以重定向到两个不同的网址,具体取决于是否从不同的.aspx页面点击了它?

3 个答案:

答案 0 :(得分:0)

你可以在你的aspx页面加载方法中做这样的事情,

    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
          /// Access Master Page control
          LinkButton lnkButton = (LinkButton)this.Master.FindControl("lnkButtonName");
          /// set postback url or whatever
          lnkButton.PostBackUrl = "";
        }
        catch(Execption e)
        {}
    }  

答案 1 :(得分:0)

您可以在Master的Page_Init事件处理程序中设置它,并使用HttpContext.CurrentHandler获取页面引用:

protected void Page_Init(Object sender, EventArgs e)
{
    var page = HttpContext.Current.Handler as Page;
    if (page is WebForm1)
        LinkButton1.PostBackUrl = "WebForm2.aspx";
    else if (page is WebForm2)
        LinkButton1.PostBackUrl = "WebForm1.aspx";
    else
        LinkButton1.PostBackUrl = "WebForm3.aspx";
}

答案 2 :(得分:0)

做这样的事情(未经测试)......

在母版页内(对于此示例,它名为siteMaster),添加公共属性:

public void SetButtonUrl(string NewUrl)
{
    this.btnMyButton.NavigateURL = NewUrl;
}

在您的aspx页面的代码隐藏中,在每个页面中添加您想要的URL:

((siteMaster)Master).SetButtonUrl("~/someurl");
相关问题