C#动态组件添加以及预定义事件处理
2014-06-15 14:28
411 查看
http://blog.csdn.net/shashoutian2005/article/details/2676762
我们现在有一个窗体,其中有2个控件:Panel和Button,要求实现在单击按钮向Panel中动态添加按钮及其对应的事件,那该怎么做呢?
在看这个之前大家可以先去看下我转载的那个C#中的预定义事件处理机制[转].这样更容易理解以下的程序
首先,创建一个全局变量"i "用来区分各个新的按钮:
private int i=0;
然后在已有的按钮中添加方法如下:
private void button1_Click(object sender, System.EventArgs e)
{
i++;
Button b = new Button();//创建一个新的按钮
b.Name="b"+i;//这是我用来区别各个按钮的办法
System.Drawing.Point p = new Point(12,13+i*30);//创建一个坐标,用来给新的按钮定位
b.Location = p;//把按钮的位置与刚创建的坐标绑定在一起
panel1.Controls.Add(b);//向panel中添加此按钮
b.Click += new System.EventHandler(btn_click);//将按钮的方法绑定到按钮的单击事件中b.Click是按钮的单击事件
}
完成以上步骤就已经可以进行动态按钮的创建
下面我们来讲如何对新建的按钮添加对应的事件方法btn_click():
private void btn_click(object sender, System.EventArgs e)
{
Button b1 = (Button)sender;//将触发此事件的对象转换为该Button对象
MessageBox.Show(""+b1.Name);
}
至此就已经完成了动态创建按钮和事件
我们现在有一个窗体,其中有2个控件:Panel和Button,要求实现在单击按钮向Panel中动态添加按钮及其对应的事件,那该怎么做呢?
在看这个之前大家可以先去看下我转载的那个C#中的预定义事件处理机制[转].这样更容易理解以下的程序
首先,创建一个全局变量"i "用来区分各个新的按钮:
private int i=0;
然后在已有的按钮中添加方法如下:
private void button1_Click(object sender, System.EventArgs e)
{
i++;
Button b = new Button();//创建一个新的按钮
b.Name="b"+i;//这是我用来区别各个按钮的办法
System.Drawing.Point p = new Point(12,13+i*30);//创建一个坐标,用来给新的按钮定位
b.Location = p;//把按钮的位置与刚创建的坐标绑定在一起
panel1.Controls.Add(b);//向panel中添加此按钮
b.Click += new System.EventHandler(btn_click);//将按钮的方法绑定到按钮的单击事件中b.Click是按钮的单击事件
}
完成以上步骤就已经可以进行动态按钮的创建
下面我们来讲如何对新建的按钮添加对应的事件方法btn_click():
private void btn_click(object sender, System.EventArgs e)
{
Button b1 = (Button)sender;//将触发此事件的对象转换为该Button对象
MessageBox.Show(""+b1.Name);
}
至此就已经完成了动态创建按钮和事件
相关文章推荐
- C#动态生成控件以及添加事件处理
- C#动态生成控件以及添加事件处理
- C#动态生成控件以及添加事件处理
- C#动态生成控件以及添加事件处理
- C#动态生成控件以及添加事件处理
- 动态添加组件或是客户端控件以及事件(Mondify By LiFuyun)
- C#_动态生成控件以及添加事件处理
- asp.net C#动态添加创建生成button按钮控件没有触发执行响应click绑定事件处理
- C#_动态生成控件以及添加事件处理
- 动态添加dev CheckEdit控件,以及删除。事件处理
- C# winform 动态添加控件 以及 事件
- C#动态添加控件,并生成事件
- Delphi组件事件动态添加函数
- C# 中动态添加控件及其事件
- DataGridView下拉框动态赋值以及事件处理
- c# TableLayoutPanel控件应用 动态添加控件及事件
- C#中的预定义事件处理机制(转)
- C++ Builder 实现动态生成窗口、控件,以及处理控件事件
- c# TableLayoutPanel控件应用 动态添加控件及事件
- 消息处理:利用控件的动态派生[RunTime],为控件添加该控件未定义的消息映射