C#用代码向窗体中添加控件?

Posted CSharp编程大全

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#用代码向窗体中添加控件?相关的知识,希望对你有一定的参考价值。

示例一:向窗体添加一个按钮:

using System;using System.Drawing;using System.Windows.Forms;
namespace WindowsFormsApp33{ public partial class Form1 : Form { public Form1() { InitializeComponent(); //实例化一个命令按钮 Button btn = new Button(); //设置命令按钮的属性 btn.Location = new Point(50, 50); btn.Size = new Size(80, 25); btn.Text = "退出"; btn.Click += btn_Click;            //btn.Click += new System.EventHandler(this.btn_Click); //添加到窗口的Controls集合中 this.Controls.Add(btn); } void btn_Click(object sender, EventArgs e) { this.Close(); }
}}

btn.Click += new System.EventHandler(this.btn_Click);

btn.Click += btn_Click;等价

示例二:态生成控件

using System;using System.Drawing;using System.Windows.Forms;
namespace WindowsFormsApp33{ public partial class Form1 : Form { public Form1()
{ InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { int row = 0; for (int i = 0; i < 15; i++) { if (i % 5 == 0 && i != 0) { row++; } Button btn = new Button(); //控件名称 btn.Name = "mybutton" + i.ToString(); //控件显示文本 btn.Text = string.Format("按钮{0}", i + 1); //控件大小 btn.Size = new Size(50, 50); //控件位置【动态变化】 btn.Location = new Point(50 + i % 5 * 100, 50 + row * 100); //添加到窗体 this.Controls.Add(btn); } } }}



方法很多,只要创建后保留了对象的引用就行,比如说可以放在List里,或者也可以多建几个变量,比如象
List<Button> list = new List<Button>();
private void Form1_Load(object sender, EventArgs e)
{
for (int i = 0; i < 4; i++)
{
Button btn = new Button();
btn.Text = "xxx"+i;
//其它属性赋值
list.Add(btn);
}
}
之后你就可以通过list[2]这种来访问对应的button了,比如list[0].Text="aaa";


以上是关于C#用代码向窗体中添加控件?的主要内容,如果未能解决你的问题,请参考以下文章

c#窗体中怎么实现用按扭打开一个网页?

c#窗体中怎么实现用按扭打开一个网页?

C#中winform窗体,如何用代码设置字体的样式(如粗体、斜体)?

C#如何让控件一直在窗体中间显示

C#利用tabControl控件实现多窗体嵌入及关闭

对VS中的winform窗体,如何用代码实现子控件在父控件中的相对位置的设置?请问C#语言实现