日期:2014-05-18  浏览次数:20811 次

C#应用程序动态生成的Textbox ,怎样获取其值,以及怎样更新
这是一个朋友提供的动态生成textbox代码
private void Form1_Load(object sender, EventArgs e)
  {
  for (int i = 0; i < 50; i++)
  {
  TextBox txtBox = new TextBox();
  txtBox.Name = "TextBox" + i.ToString();
  txtBox.Width = 50;
  txtBox.Location = ...
  txtBox.Text=""+i;//初始值
  this.Controls.Add(txtBox);
  }
   
 }

另外,我在FORM上添加了一个按扭,在用户点击后,获取将生成的textbox的值,并且给每个textbox更新数值.
但由于自己是学C#不久,这方面的内容了解不多,希望大家给提示,怎样获取生成的textbox的值,以及怎样修改每个textbox的值??

------解决方案--------------------
Sorry 理解错了.

public Form1()
{
InitializeComponent();

for (int i = 0; i < 10; i++) 

TextBox txtBox = new TextBox(); 
txtBox.Name = "TextBox" + i.ToString(); 
txtBox.Width = 50;
txtBox.Location =new System.Drawing.Point(i*20, i*20);
txtBox.Text=""+i;//初始值 

this.Controls.Add(txtBox); 

}

private void button1_Click(object sender, EventArgs e)
{
ArrayList list = new ArrayList();
for (int i = 0; i < 10; i++)
{
list.Add("TextBox" + i.ToString());
}

foreach (Control z in Controls)
{
if (list.Contains(z.Name))
{
string val = z.Text;//获取每个控件的值
}
}
}