用户控件通过自定义事件传参数给父窗体
2009-06-16 21:00
946 查看
首先拖一个用户控件:
public partial class MyControl : UserControl
{
public MyControl()
{
InitializeComponent();
}
public event EventHandler<MyButtonEvent> MyBtnClick;//定义一个用户控件的事件
//用户控件中通过Button的Click事件触发自定义事件
private void button1_Click(object sender, EventArgs e)
{
//将用户控件中TextBox的文本内容,传给事件MyButtonEvent
MyBtnClick(sender, new MyButtonEvent(this.textBox2.Text));
}
}
上面这个类是用户控件的
public class MyButtonEvent : EventArgs
{
private object sender;
public MyButtonEvent()//空构造,必须有
{
}
public MyButtonEvent(object sender)//带参数的构造
{
this.sender = sender;
}
public string GetStr()//外部通过e点出来的方法
{
return sender.ToString();
}
}
先生成一下解决方案,你就会看到在Form中拖入的用户控件就会多了一个MyBtnClick事件,双击就和我们平常用的Click事件一样用了。
在Form窗体中拖入一个上面建好的用户控件MyControl 和一个TextBox->textBox1
private void myControl1_MyBtnClick(object sender, MyButtonEvent e)//自定义事件
{
this.textBox1.Text = e.GetStr();
}
以上代码通过自定义事件的形式,将用户控件中的值传给父窗体
public partial class MyControl : UserControl
{
public MyControl()
{
InitializeComponent();
}
public event EventHandler<MyButtonEvent> MyBtnClick;//定义一个用户控件的事件
//用户控件中通过Button的Click事件触发自定义事件
private void button1_Click(object sender, EventArgs e)
{
//将用户控件中TextBox的文本内容,传给事件MyButtonEvent
MyBtnClick(sender, new MyButtonEvent(this.textBox2.Text));
}
}
上面这个类是用户控件的
public class MyButtonEvent : EventArgs
{
private object sender;
public MyButtonEvent()//空构造,必须有
{
}
public MyButtonEvent(object sender)//带参数的构造
{
this.sender = sender;
}
public string GetStr()//外部通过e点出来的方法
{
return sender.ToString();
}
}
先生成一下解决方案,你就会看到在Form中拖入的用户控件就会多了一个MyBtnClick事件,双击就和我们平常用的Click事件一样用了。
在Form窗体中拖入一个上面建好的用户控件MyControl 和一个TextBox->textBox1
private void myControl1_MyBtnClick(object sender, MyButtonEvent e)//自定义事件
{
this.textBox1.Text = e.GetStr();
}
以上代码通过自定义事件的形式,将用户控件中的值传给父窗体
相关文章推荐
- 使用委托在用户自定义控件中实现事件响应
- ASP.NET 用户控件自定义属性、方法、事件
- 用户控件传参数给父窗体
- Flex中通过doubleClick事件来检测用户是否在TextInput控件中进行了双击(double clicks)操作的例子
- 使用委托在用户自定义控件中实现事件响应
- android 开发零起步学习笔记(十七):自定义android用户控件,使用回调函数实现自定义事件
- 给自定义用户控件传递参数
- Flex中如何通过监听scroll事件检测用户改变DateChooser控件选中月份的例子
- Flex中通过doubleClick事件来检测用户是否在TextInput控件中进行了双击(double clicks)操作的例子
- C# winform中自定义用户控件 然后在页面中调用用户控件的事件
- ASP.NET用户控件事件的定义和实践-- 自定义事件数据类
- 使用委托在用户自定义控件中实现事件响应
- Actionscript通过构造自定义事件和方法,谈谈可选参数的问题
- 使用委托在用户自定义控件中实现事件响应
- C# winform中自定义用户控件 然后在页面中调用用户控件的事件
- 转Asp.net 用户控件添加自定义事件
- 自定义android用户控件,使用回调函数实现自定义事件
- asp.net中给用户控件添加自定义事件
- 自定义android用户控件,使用回调函数实现自定义事件
- 关于在c#中创建用户控件后,winform应用程序在调用中无法通过点击用户控件的子控件为其自动添加事件代码的问题