我要在使用该母版页的页面中访问该母版页中的一个事件,但是它似乎无法正常工作。

在主人

public delegate void NotifyRequest(object sender, EventArgs e);
public class MyMaster
{
   public event NotifyRequest NewRequest;
   protected void uiBtnNewTask_Click(object sender, EventArgs e)
   {
      if(NewRequest!= null)
         NewRequest(this, e)
   }
}


继承页面

MyMaster mm = new MyyMaster();
mm.NewRequest += new NotifyRequest(mm_NotifyRequest);
void mm_NotifyRequest(object sender, EventArgs e)
{
    Label1.Text = "Wow";
    this.Label1.Visible = true;
}


我的问题是事件始终为null。有任何想法吗?

最佳答案

您可能需要使用以下语法在母版页中访问事件

((MyMaster)Master).NewRequest += new NotifyRequest(mm_NotifyRequest);


如果您希望访问母版页的成员,则需要使用页面“母版”属性并将其转换为母版页。

交替

如果您不希望使用强制转换,则可以使用@MasterType指令创建对您的母版页(在本例中为MyMaster)的强引用。这样您就可以像这样访问您的事件:Master.NewRequest。

More Reading about Master Pages

关于asp.net - 在母版页中访问事件和成员,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/965861/

10-11 21:36