0

使用 .NET 1.1,我有一个 DataGrid,每行包含三列。

第一行有一个带有一些文本的标签。

第三行总是有两个单选按钮和两个复选框,它们位于页面的 HTML 端。

第二行将有动态生成的控件(现在只是文本框),每行可以有 1 个或更多。这些将用于用户输入。

页面上有一个按钮,当用户单击该按钮时,我需要使用用户输入的新值更新 DataGrid 的源(我的 DataTable)。

问题是 DataGrid 似乎正在丢失 PostBack 上动态生成的控件。我可以遍历 DataGrid 中的每个项目,并且可以访问单选按钮和复选框,但文本框不存在。

有任何想法吗?

4

2 回答 2

3

请记住:每次回发发生时,您都在使用页面类的新实例。在上一次回发期间添加到页面的动态控件会在该回发的页面呈现给浏览器后立即与该页面实例的其余部分一起进入垃圾收集器。您需要在每次回发时重新创建动态控件。

于 2008-10-14T13:57:45.357 回答
0

您必须重新生成控件。您应该能够从 http 请求对象中获取它们的值

于 2008-10-14T14:00:03.183 回答