考虑我有2个控件,C
和CompositeC
,其中包含C
。 C
和CompositeC
都有ViewState。
现在考虑第三个控件会导致回发。
生成的生命周期如下:
CompositeC
尝试恢复状态。为此,需要创建子控件,以便创建C
。C
时,将恢复ViewState。CompositeC.RecreatedChildControls()
。问题是在步骤3之后C
状态未再次恢复。C
方法应该修改控件的状态,以便在RecreateChildControls
控件重新引入C
时收集它的viewstate会自动恢复,但它没有。
我该怎么办?
答案 0 :(得分:0)
实际上我发现这是设计的,这是有道理的。 ViewState旨在允许在回发后进行状态恢复。如果之后我重新创建了我的控件,它就不会发生。