c#给用户控件添加事件处理程序
2014-07-28 14:43
232 查看
1.首先在usercontrol后台添加如下代码:
public partial class MyControl: UserControl
{
//添加事件代理
public event EventHandler AX;
//在需要响应的事件中添加
private void MyControl_MouseClick(object sender, MouseEventArgs e)
{
if (AX != null)
{
AX(this, e);
//Or use the following sentence code.
//AX(this, new EventArgs());
}
}
}
2.在窗体或页面添加一个用户控件,在Page_Load或Form_Load事件中添加:
private void FrmRBD_Load(object sender, EventArgs e)
{
MyControl1.AX += new EventHandler(Event_AX);
}
protected void Event_AX(object sender, EventArgs e)
{
MessageBox.Show("Event has occur!<br/>");
}
以添加自定义按钮的Click事件举例,这里需要注意的是,如果自定义控件上是多个控件的组合,比如Picture控件上有个Label控件,这样子的话,需要在 public partial class MyControl: UserControl 中把Picture和Label的Click都映射到MyControl的Click,否则事件也不会调用!
public partial class MyControl: UserControl
{
//添加事件代理
public event EventHandler AX;
//在需要响应的事件中添加
private void MyControl_MouseClick(object sender, MouseEventArgs e)
{
if (AX != null)
{
AX(this, e);
//Or use the following sentence code.
//AX(this, new EventArgs());
}
}
}
2.在窗体或页面添加一个用户控件,在Page_Load或Form_Load事件中添加:
private void FrmRBD_Load(object sender, EventArgs e)
{
MyControl1.AX += new EventHandler(Event_AX);
}
protected void Event_AX(object sender, EventArgs e)
{
MessageBox.Show("Event has occur!<br/>");
}
以添加自定义按钮的Click事件举例,这里需要注意的是,如果自定义控件上是多个控件的组合,比如Picture控件上有个Label控件,这样子的话,需要在 public partial class MyControl: UserControl 中把Picture和Label的Click都映射到MyControl的Click,否则事件也不会调用!
相关文章推荐
- c#给用户控件添加事件处理程序
- C#动态生成控件以及添加事件处理
- c# 用户控件添加事件
- C#中动态创建控件及事件处理程序
- C#动态生成控件以及添加事件处理
- 以编程方式向 ASP.NET 控件添加客户端事件处理程序--TextBox.Attributes.Add()
- asp.net C#动态添加创建生成button按钮控件没有触发执行响应click绑定事件处理
- C#中动态创建控件及事件处理程序
- C#中动态创建控件及事件处理程序
- 关于在c#中创建用户控件后,winform应用程序在调用中无法通过点击用户控件的子控件为其自动添加事件代码的问题
- 在C# WinForm程序中创建控件数组及相应的事件处理
- C#中动态创建控件及事件处理程序、置于顶层
- C#动态生成控件以及添加事件处理
- C#中动态创建控件及事件处理程序
- C#注册控件处理程序(SetConsoleCtrlHandler)函数示例 控制台关闭事件改写
- c# 清除别人的控件中的原有事件处理程序
- C#动态生成控件以及添加事件处理
- C#中动态创建控件及事件处理程序
- 在C# WinForm程序中创建控件数组及相应的事件处理
- C#动态生成控件以及添加事件处理