【发布时间】:2017-10-27 14:45:20
【问题描述】:
也许我是在借用麻烦,但我已经把注意力集中在动态创建控件上。我正在动态构建一个表单,允许用户输入任意数量的数据行。
我有基于单击按钮创建控件的方法,并且我知道只要我的控件在每个 PostBack 上具有相同的 ID,那么 ViewState 就会使用它们在 PostBack 之前拥有的数据填充它们。
我的问题是:假设用户添加了 5 行并填写了它们。决定删除第 3 行。最简单的方法是调用parent.Controls.Remove("ID")。这是否会更新 ViewState,以便我可以将计数器减 1 并将剩余控件从 0 重新编号为 3,或者我是否需要跟踪删除了哪个控件并保持编号为 0、1、3、4?
我是否必须做一些事情来清除 ViewState 的已删除控件记录?
【问题讨论】:
-
不问,你可以试着去做
-
还没有问题。我正在涉足全新的领域,并提出这个问题以获得更好的理解。