更有效的方法吗? (ASP.NET文本框)

时间:2010-11-11 13:42:38

标签: c# asp.net textbox

我在我的ASP.NET页面中使用向导,在用户从DropDownList中选择的第一步中,将在下一个向导步骤中显示多少组控件(从1-5开始)。

例如,在向导的第2步中有3个文本框。如果他们在前一个屏幕上选择2,那么将有6个,因为将有2套这些。

我需要能够将所有这些文本框的内容存储在数据库中(简单的部分我认为,有5列,所有文本框都可以为空。

这样做的简单方法我认为只是创建所有可能的控件(5套),并根据他们在上一个屏幕中选择的内容隐藏它们。是否有更有效/更容易的方式?

由于

3 个答案:

答案 0 :(得分:1)

这实际上取决于您对高效/简单的定义 更标准的方法是使用repeater control根据先前的输入显示正确数量的控件。但是,如果您没有使用转发器控件,那么在回发期间显示输出和检索用户输入将涉及一定程度的学习。

答案 1 :(得分:0)

您可以使用ASP.NET Wizard Control

答案 2 :(得分:0)

如果你绝对知道5个盒子是最大的,并且不太可能有更多,那么在服务器控件及其接口项目(例如Control.Visible)上使用label或什么是其他的,会工作...... 但是......

但是,解决方案有点脆弱;如果您决定添加更多可能的框,则需要在几个地方更改手动代码。

动态解决方案可让您在config中设置最大数量的选项,或者只在代码中设置一个位置。它可能需要您稍微更改一下数据库结构,但无论如何,这对于规范化可能会更好。它还涉及在向导步骤中动态生成项目。

(如果需要,可以提供有关该选项的更多信息!)