2012-06-01 24 views
1

我正在一個現有的門戶網站上工作,其中有一個從另一個類繼承的類。在基類中,Page.EnableViewstate已被設置爲false,如下所示。在子類中設置父類的ViewState asp.net

Page_Load() 
{ 
Page.EnableViewState=false; 
} 

但是在子類中,我使用GridView來顯示後端的某些細節。當父頁面中的Page.EnableViewstate=false時,gridview不會顯示。

有沒有辦法在子類中啓用父類的視圖狀態?我非常需要基礎類,但是頁面。由於某些原因,EnableViewState必須在該頁面中設置爲false。任何幫助是最寶貴的!

回答

1

您可以在父類禁用它之後將viewstate設置爲啓用 - 將以下代碼放入您的(子類)頁面中。

protected override void OnLoad(EventArgs e) 
    { 
     base.OnLoad(e); 
     EnableViewState = true; 
    } 

的順序很重要 - 這立即後,頁面已經執行了它的onload方法的基礎 - 我們只是設置viewstateenabled真事後

這將使視圖狀態只是針對當前頁面 - 從基類繼承的所有其他頁面將繼續禁用viewstate。

+0

非常感謝!它的工作.. – user1080139

+0

沒問題,很高興幫助:) – Nathan