0

我在 C# 中动态创建了一些表,它们给了我视图状态问题。我有一个复选框表和一个取决于第一个的数字条目表。当我按下一个导致回发的按钮时,我遇到了一些问题。这是一个流程图。

Page_Load

  • 创建复选框表
  • 创建数字条目表(复选框始终为空,表的行数错误,但从回发中正确填充了数字)

回发按钮

  • 创建数字条目表(现在已填充复选框,表具有正确的行数,但数字无法在回发中存活)。

有没有办法在创建数字条目表之前将视图状态加载到复选框表?我试图在一个或另一个地方创建数字条目表(在页面加载或回发按钮方法上),但都不是完全正确的。我知道需要在每次加载时创建动态内容才能显示视图状态。

我怀疑我可能需要创建一个数据表并将其存储在视图状态中,以便复选框正确重新出现......

4

1 回答 1

0

我会在您的页面PreInitInit事件中添加您的动态控件。虽然您可以在之后添加它们,但在该Init阶段之后ViewState是为控件加载数据的时间。

如果在Page_Load控件必须播放期间添加控件,则必须追赶,这意味着它会运行页面生命周期中的所有事件,直到它赶上页面的其余部分。这可能会导致您看到的问题。

Page Lifecycle这是一篇关于and的优秀文章:http ViewState: //www.codeproject.com/Articles/24611/ASP-NET-Internals-Viewstate-and-Page-Life-Cycle

于 2012-12-07T17:18:58.813 回答