我正在尝试在Site.Master页面中单击一个按钮来触发内容页面中的单击事件。
据我所知,Master-page实际上在编译时变成了子类。
经过几个小时的谷歌搜索后,我尝试了几种不同的解决方案。
以下是我申请的当前解决方案:
PageLoad()
{
Button btn = this.Master.FindControl("lbtnMaintenance") as Button;
btn.Click += new System.EventHandler(MasterlbtnMaintenance);
}
private void MasterlbtnMaintenance(object sender, EventArgs e)
{
MaintenanceHomeScreen(true);
}
答案 0 :(得分:0)
//Created an Interface on .aspx page:
public interface ICommandable
{
void LblMaintenanceClick(object argument, EventArgs e);
}
public partial class Default : Page, ICommandable
{
public void LblMaintenanceClick(object sender, EventArgs e)
{
}
}
// On master page:
public void lbtnMaintenance_OnClick(object sender, EventArgs e)
{
if (Page is ICommandable)
{
(Page as ICommandable).LblMaintenanceClick(sender, e);
}
else
throw new NotImplementedException("u NO WURK");
}