我正在尝试创建一个强类型的viewstate对象.
public class MyNewPage : ViewStatePage<MyNewPageViewStateStore>
Run Code Online (Sandbox Code Playgroud)
在ViewStatePage的实施,我实例化对象Store进行的this.ViewState["_PageViewState"].在派生页面中,我将使用该对象并对其进行更改.
什么是在asp.net页面中调用的最后一个事件仍然可以影响View State?
是Unload吗?
在ASP.net页面生命周期中,订单进行(这是短版本):
Preinit - > Init - >加载Viewstate - > 页面加载 - >事件 - > PreRender - >保存Viewstate - > Render - > Unload
视图状态更改的位置以粗体显示.因此,您必须修改viewstate并使其保持持久的最后一次机会是PreRender(从技术上讲,您可以处理SaveViewState,这将是您修改viewstate并保存它的最后机会).
MSDN:http://msdn.microsoft.com/en-us/library/ms178472.aspx#additional_page_life_cycle_considerations
处理SaveViewState:
public partial class MyPage: System.Web.UI.Page
{
protected override object SaveViewState()
{
// manipulate viewstate objects here -- Last Chance
return base.SaveViewState();
}
protected void Page_Load(object sender, EventArgs e)
{
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4280 次 |
| 最近记录: |