完整性检查:母版页,内容页和ASCX依赖项

时间:2011-07-19 12:37:37

标签: c# asp.net user-controls webforms master-pages

我希望有人能够给出我们正在做的事情并告诉我,我们是否会以一种奇怪的方式解决这个问题。

我有什么:

  • 我们有.master(母版页),。aspx(内容页)和.ascx(用户控件)。
  • 用户控件应出现在所有页面上,因此我们将其放在母版页
  • 应根据显示的内容页面对用户控件进行不同的初始化。因此,内容页面具有在用户控件上引发事件的可靠性,传递一些参数,这些参数初始化控件。

问题:

在我看来,这消除了用户控件与内容页面或母版页之间的任何依赖关系。我是对的吗?

在用户控件上调用事件是最简单的方法来传递参数并相应地初始化控件吗?

很高兴澄清任何进一步的观点,谢谢。

1 个答案:

答案 0 :(得分:1)

我会说没关系,但我想澄清一下:用户如何控制订阅内容页面的事件?

或者,您也可以考虑为母版页创建一个界面:

public interface IMyMaster
{
  UserControlType Control { get; }
}

将此接口应用于主接口后,接口可以返回对控件的直接引用。然后,内容页面可以:

if (this.Page.Master is IMyMaster) {
   ((IMyMaster)this.Page.Master).Control.Initialize();
}

HTH。