我正在尝试设计一个页面,该页面根据用户的偏好同时处理Employee
和处理 CRUD 任务。Station
我已经UserControl
创建一个子类EditEntityControl
并开发了两个从这个基类派生的自定义控件,每个控件都处理Employee
orStation
对象的 CRUD 活动。
当用户在触发回发的下拉列表中切换值时,我想将正确的控件动态加载到页面中。这适用于每个控件的第一次加载,但是当我尝试重新加载第一个控件(加载第二个之后)时,出现以下错误:
无法加载视图状态。正在加载视图状态的控制树必须与在先前请求期间用于保存视图状态的控制树匹配。例如,当动态添加控件时,回发期间添加的控件必须与初始请求期间添加的控件的类型和位置相匹配。
我还在第二个控件的初始加载中看到了一些奇怪的行为,其中数据绑定没有绑定到正确的控件(例如,设置按钮的文本而不是控件上的文本框)。
有没有办法处理这种情况?或者,有没有办法清除ViewState
并完全重新请求页面以解决此错误?看来,如果我能清除ViewState
PostBacks 之间的这种混乱/混乱,其他一切都按设计工作。