我在堅持中在回發視圖狀態的控制(vb.net)視圖狀態回發
這裏找到一些問題後不會保留的一些代碼我把我的控制已經:
Protected Overrides Sub OnInit(ByVal e As System.EventArgs)
MyBase.OnInit(e)
Me.EnableViewState = True
Me.ViewStateMode = System.Web.UI.ViewStateMode.Enabled
If Not Page.IsPostBack Then
_SortTime = DateTime.Now
_SortTime.AddSeconds(-10) ' incase the fileserver and webserver date are out of sync
ViewState("PageLoadTimeStamp") = _SortTime
End If
End Sub
onload:
Protected Overrides Sub OnLoad(ByVal e As System.EventArgs)
MyBase.OnLoad(e)
_SortTime = CType(ViewState("PageLoadTimeStamp"), DateTime)
End Sub
但是在每次回發時,viewstate都是空的。
更新:我想要做什麼? 我想存儲用戶第一次加載頁面的時間。然後,用戶將做多個回發。在每一次回傳中,我都需要知道那個時間。
更新2:上下文:
- ASPX頁(Editor.aspx)將加載一個網絡控制(ObjectsEditor.ascx)動態地
- ObjectsEditor.ascx包含單個定製控制的(對象.vb)
- Objects.vb將創建另一個自定義控件(ObjectsContainer.vb)並將其添加到它的控件中 ObjectsContainer需要保持視圖狀態。
我將EnableViewState =「true」設置爲無處不在,但仍無結果。我真的需要在這裏設置這些屬性嗎? (ViewStateMode和EnableViewState)如果不是,我應該在哪裏處理這些以及這些屬性之間的區別是什麼?
非常感謝。
好的。我將把load viewstate部分移動到onload上。我會在一分鐘之內通知你。 – ThdK 2012-03-21 10:12:45
我將+1鏈接到msdn :) – ThdK 2012-03-21 10:14:33
它不適用於將加載視圖狀態移動到onload方法。你有另一個想法可以幫助我嗎? – ThdK 2012-03-21 12:11:10