我有一个相当复杂的页面,可以在转发器内动态构建用户控件.在初始化之前,必须在Init页面事件期间绑定此转发器,ViewState
否则动态创建的用户控件将不会保留其状态.
这会创建一个有趣的Catch-22,因为我需要在初始页面加载时创建绑定转发器的对象,然后将其保留在内存中,直到用户选择离开或保存为止.
因为我不能ViewState
用来存储这个对象,但是在Init期间可以使用它,我被迫将它存储在Session中.
这也有问题,因为我必须在非回发期间显式地使会话值为空,以便模拟ViewState
工作方式.
在这种情况下,必须有一种更好的状态管理方法.有任何想法吗?
编辑:一些关于使用的好建议LoadViewState
,但是当我这样做时,我仍然遇到状态未恢复的问题.
这里有一点如果是页面结构
Page - > UserControl - > Repeater - >动态创建的N量UserControl.
我将重写LoadViewState
放在父级中UserControl
,因为它被设计为完全封装并独立于它所在的页面.我想知道问题出在哪里.