2013-04-03 37 views
1

調用的方法只有一次,我有以下情況:如何在第一頁加載在母版頁

Page1.aspx此頁面有母版頁master.aspx

我在母版頁一些代碼:

if (!Page.IsPostBack) 
      { 
       adjustServiceBar(); 

      } 

當我在Page1.aspx點擊任何鏈接進入的!Page.IsPostBack和執行方法!

我想這個方法在!Page.IsPostBack)只有

回答

2

一個做到這一點的方法是設置一個會話變量,然後檢查該變量,以確保您的代碼將觸發一次。 另一種方法是在窗體上設置一個隱藏的控件,並使用它的文本或值屬性進行操作。

根據每種情況,解決方案可能非常複雜,例如自定義派生的主頁和擴展當前事件功能以滿足您需求的頁面。

2

我相信在內容頁面檢查IsPostBack會更加一致。您可以將此條件移至Page1.aspx,並在您的母版頁中顯示adjustServiceBar()方法,以便內容頁面可以調用它,如Master.adjustServiceBar()

+0

+1我也會這樣做。畢竟內容頁面不是主頁面而是一個回放頁面。 –

+0

'Master.adjustServiceBar();'由於保護級別而不可訪問 –

+0

那麼爲什麼不更改保護級別?)如果由於任何原因這是不可能的,則可以添加另一個包裝此方法的方法。或者你根本不能改變主頁面代碼? –