菜单链接位于母版页中,相应的单击事件写入母版页本身。我只有一个内容页面。数据以html形式保存在数据库中,并将在相应的菜单链接单击时呈现到内容页面。但问题是内容页加载发生在母版页之前,因此内容页是空白的。下面是我的代码-
public void GetLinkPage(Int32 linkId)//master page
{
LinkContentEnitity linkContent = new LinkContentEnitity();
linkContent = PageController.GetPageContent(linkId);
}linkContent以HTML形式包含该内容页面。如何在内容页上打印此值?
发布于 2011-01-12 22:38:06
虽然不完全清楚,但听起来像是说您的内容页面需要在其自己的Load事件中的信息,该事件是在母版页的Page_Load事件中生成的。
因此,要么将调用GetPageLink()的代码移动到内容页面中的PreRender,要么在ContentPage中为Page_LoadComplete()添加一个事件处理程序(在加载页面上的所有子控件后触发),并调用GetPageLink()并从那里执行呈现,例如在内容页面中:
protected override void OnInit(EventArgs e)
{
Page.LoadComplete += new EventHandler(Page_LoadComplete);
}
protected void Page_LoadComplete(object sender, EventArgs e) {
// do stuff here, instead of OnLoad/Page_Load event
}顺便说一下,这是一个有用的参考事件顺序。在处理嵌套控件(母版/内容、用户控件等)时,您很容易遇到问题,这有助于很好地理解事件顺序。
发布于 2011-01-12 22:31:21
一种方法可能是这样做……在内容页上,添加一个执行所需工作的公共方法。在母版页中,将this.Page强制转换为页面类并调用该方法。
https://stackoverflow.com/questions/4669813
复制相似问题