< type="text/JavaScript"> < src="http://a.alimama.cn/inf.js" type="text/javascript">
看到有朋友不断提问关于如何在窗体上批量生成控件,并且获取控件的值的相关问题。先将我的处理方式共享大家,希望能给朋友一些帮助。1.批量生成控件(控件可以自己指定,我这里是以ComboBox为例),代码如下:
view plaincopy to clipboardprint?private void button1_Click(object sender, EventArgs e) { int num = 5; ComboBox[] name = new ComboBox[num];//控件可以随意设置,比如:CheckBox,TextBox等 for (int i = 0; i < num; i++) { name[i] = new ComboBox(); name[i].Location = new Point(20, 10 + i * 25);//位置自己调整 name[i].Size = new Size(80, 16);//大小同样 this.panel1.Controls.Add(name[i]);//窗体上有一个panel1 } this.panel1.Refresh(); } private void button1_Click(object sender, EventArgs e) { int num = 5; ComboBox[] name = new ComboBox[num];//控件可以随意设置,比如:CheckBox,TextBox等 for (int i = 0; i < num; i++) { name[i] = new ComboBox(); name[i].Location = new Point(20, 10 + i * 25);//位置自己调整 name[i].Size = new Size(80, 16);//大小同样 this.panel1.Controls.Add(name[i]);//窗体上有一个panel1 } this.panel1.Refresh(); }
2.如何获取所有控件的值(或者其他属性),代码如下: < type="text/JavaScript"> < src="http://a.alimama.cn/inf.js" type="text/javascript">
view plaincopy to clipboardprint?private void button2_Click(object sender, EventArgs e) { string mess = ""; foreach (Control c in panel1.Controls) { if (c is ComboBox)//如果你的是其他控件,请自行修改 { mess+= ((ComboBox)c).Text; } } MessageBox.Show(mess); } private void button2_Click(object sender, EventArgs e) { string mess = ""; foreach (Control c in panel1.Controls) { if (c is ComboBox)//如果你的是其他控件,请自行修改 { mess+= ((ComboBox)c).Text; } } MessageBox.Show(mess); }
欢迎转载,请注明出处。 < type="text/JavaScript"> < src="http://a.alimama.cn/inf.js" type="text/javascript">
本文来自博客,转载请标明出处:http://blog.csdn.net/gisfarmer/archive/2009/02/17/3900288.aspx
