我正在asp.net和C#中创建一个Web表单。
表单询问用户用户拥有多少个孩子,然后在单击Proceed按钮后,应用程序应提示每个孩子的姓名。
我知道使用控制台应用程序,编码将是:
for (int i = 0 ; i < noOfChildren ; i++)
{
Console.Write("Child's Name: ");
name = Console.ReadLine();
}
我如何编写asp.net/C#应用程序以执行相同的操作,但只显示用户输入的标签和文本框的次数...?
提前致谢!
答案 0 :(得分:1)
在下面的示例中,它仅动态创建Textbox
,但您可以根据需要添加样式和标签控件动态。
在Aspx
页面中,在html正文中创建form
标记。
<form id="form1" runat="server">
<div>
<table>
<tr>
<td>
No of Text boxes
</td>
<td>
<asp:TextBox ID="txtNumbers" runat="server"></asp:TextBox>
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:Button ID="btnSubmit" runat="server" OnClick="btnSubmit_Click" Text="Submit" />
</td>
</table>
<br />
</div>
并在c#文件后面的代码中
protected void btnSubmit_Click(object sender, EventArgs e)
{
int noofcontrols = Convert.ToInt32(txtNumbers.Text);
for (int i = 1; i <= noofcontrols; i++)
{
TextBox NewTextBox = new TextBox();
NewTextBox.ID = "TextBox" + i.ToString();
NewTextBox.Style["Clear"] = "Both";
NewTextBox.Style["Float"] = "Left";
NewTextBox.Style["Top"] = "25px";
NewTextBox.Style["Left"] = "100px";
//form1 is a form in my .aspx file with runat=server attribute
form1.Controls.Add(NewTextBox);
}
}
我认为这就是你想要的。