2008-12-11 53 views
1

我在母版页中有一个报告链接菜单。每当用户更改子页面上的值时,我都需要在每个末尾添加一个ID。什么是完成这个的好方法?使用子页面数据更新母版页上的链接

更新:我应该提到在UpdatePanel内发生子更新,这意味着当更改发生时主页面不会重新加载。

回答

0

回应您的最新信息:

更新后的面板可以将ID写入隐藏字段,菜单事件可以在Request.Form["fieldName"]中查找隐藏字段。

请注意,您不应该fieldName.Text,因为ASP.NET对于已经被AJAX的字段返回正确值的工作做得不好。

2

母版页实际上是它控制的页面的子控件。您可以像控制页面上的任何其他控件一样控制MasterPage(几乎)。你所需要做的就是得到一个参考。

您的属性添加到您的母版的代码,所以它的代码可能是这个样子:

public partial class _default : System.Web.UI.MasterPage 
{ 
    protected string m_myString = string.Empty; 
    public string myString 
    { 
     get { return m_myString; } 
     set { m_myString = value; } 
    } 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
} 

然后,你必须到this.Master物业投放到您的母版

public partial class index : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     // Cast here to get access to your MasterPage 
     _default x = (_default)this.Master; 
     x.myString = "foo"; 
    } 
} 
+0

查看我刚添加到原始问题的更新。我通常会使用你的方法,但部分页面更新是复杂的事情。 – gfrizzle 2008-12-11 21:29:13