在一个Button_Click事件中创建了几个动态textBox控件,如何用C#获取textBox控件所输入的值?

2024-11-02 00:21:34
推荐回答(2个)
回答1:

private void Form1_Load(object sender, EventArgs e)
{
TextBox tb = new TextBox();
tb.Name = "tb1";
tb.Left = 100;
tb.Top = 200;
this.Controls.Add(tb);
Button bt = new Button();
bt.Left = 100;
bt.Top = 320;
bt.Text = "click here";
bt.Click += new EventHandler(bt_Click);
this.Controls.Add(bt);
}

void bt_Click(object sender, EventArgs e)
{

Control[] ctrl= this.Controls.Find("tb1", true);
foreach (Control ct in ctrl)
{
if (ct is TextBox)
{
this.Text= ((TextBox)ct).Text;
}
}
}
这里的TextBox和Button都是动态生成的。
使用ControlCollection类的Find方法查找,此方法返回的是Control[]数组。因而在循环中判断一下。最后将文本框中的文本显示在窗体标题条上。只生成了一个TextBox,如果是多个,道理一样。
希望对你有帮助。

回答2:

txt.Text()可获取其所得到的值。比如string Name=TxtName.Text();将其内容获取到并保存在局部变量Name当中。