[英]how to update content page from master page?
菜單鏈接位於母版頁中,而相應的單擊事件則寫在母版頁本身中。 我只有一個內容頁面。 數據以html格式保存在數據庫中,並在相應菜單鏈接單擊時呈現到內容頁面。 但是問題是內容頁加載發生在母版頁之前,因此內容頁為空白。 這是我的代碼
public void GetLinkPage(Int32 linkId)//master page
{
LinkContentEnitity linkContent = new LinkContentEnitity();
linkContent = PageController.GetPageContent(linkId);
}
linkContent
包含HTML格式的內容頁面。 如何在內容頁面上打印此值?
盡管尚不完全清楚,但聽起來您是在說內容頁面需要在其自身的Load事件中獲取信息,該事件是在母版頁的Page_Load
事件中生成的?
因此,可以將調用GetPageLink()
的代碼移動到內容頁面中的PreRender
,或者在ContentPage中為Page_LoadComplete()
添加事件處理程序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
}
順便說一下,這對於事件順序是有用的參考。 處理嵌套控件(主控件/內容,用戶控件等)時,很容易遇到問題,這有助於您更好地了解事件順序。
一種實現方法可能是...在內容頁面上,添加一個公共方法來完成您需要完成的工作。 在母版頁中,將此this.Page轉換為您的頁面類,然后調用該方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.