在一个Button_Click事件中创建了几个动态textBox控件,如何用C#获取textBox控件所输入的值?
2个回答
展开全部
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,如果是多个,道理一样。
希望对你有帮助。
{
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,如果是多个,道理一样。
希望对你有帮助。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询