如何在回发时保存asp:HiddenField值?
解决方法
这与ViewState无关.通过执行POST来维护表单控件的值.只要在页面生命周期中尽早创建控件,就会在控件上设置发布值.如果刷新页面或单击执行GET的超链接,则该值将丢失或恢复为设计器生成的默认值.
回到你的问题,如果你有一个设计器生成的HiddenField(在aspx文件中),它应该自动设置回发值.您要么在代码中的其他位置更改它,要么在设置之前尝试访问该值(即在Page_Load()之前).如果您有代码生成的HiddenField,则它需要具有相同的ID并在Page设置发布值之前创建,例如在OnInit中.
我建议你仔细阅读并理解以下文章.否则,您将继续打墙,因为Page lifecycle和ViewState是基础.
http://msdn.microsoft.com/en-us/library/ms972976.aspx
http://weblogs.asp.net/infinitiesloop/archive/2006/08/03/Truly-Understanding-Viewstate.aspx