0

在我的示例 asp.net 应用程序中,可以在此处找到,我在 Page Init 上创建动态控件。然后,如果用户在控件中输入文本并单击按钮,则应使用新值重新创建所有控件。

该页面使用用户手动输入的数据覆盖第一行中的填充值。

关于如何在不更改为 html 控件或 MVC 的情况下防止这种情况的任何想法?

4

2 回答 2

0

视图状态在 Page_Init 事件中不可用。将创建移动到 Page_Load 事件。

于 2012-04-11T23:43:01.833 回答
0

我最终做了一个解决方法来保持我自己的状态,我添加了一个查询字符串变量来告诉我的代码是第一次加载还是回发。我使用强制清除控件的新变量重定向到同一页面。

另一种方法是在表单加载时检查 IsPostBack 并再次从我存储的对象值中替换 ViewState 分配的值。

仍然无法通过禁用页面和控件上的 Viewstate 来了解为什么它仍然会使用 viewstate 值填充我的动态控件。

于 2012-05-29T02:56:09.007 回答