从不是用母版页制作的用户控件访问父页面上的控件时,我所要做的就是:
Page sample = this.Page;
我可以访问父页面及其上的控件。但是,当该页面是使用母版页制作时,相同的代码不起作用,并且该控件出现空异常。
这里需要改变什么?
从不是用母版页制作的用户控件访问父页面上的控件时,我所要做的就是:
Page sample = this.Page;
我可以访问父页面及其上的控件。但是,当该页面是使用母版页制作时,相同的代码不起作用,并且该控件出现空异常。
这里需要改变什么?
在你的主代码后面
public partial class SiteMaster : MasterPage
{
public string PropertyInMaster { get; set; }
protected void Page_Init(object sender, EventArgs e)
{
PropertyInMaster = "test";
...
在您的用户控件中:
protected void Page_Load(object sender, EventArgs e)
{
var mst = this.Page.Master as SiteMaster;
Response.Write(mst.PropertyInMaster);
...
您还可以对您的主内容占位符和其中的控件进行查找控制;mst.FindControl("ContentPlaceHolder1").FindControl("MyTextBox")...