C#学习之生成事件

来源:互联网 发布:淘宝店铺导航条 编辑:程序博客网 时间:2024/05/18 14:27

一般来说事件的生成可以分为以下步骤;

  • 创建事件
    • 定义一个事件的委托如: delegate void ActionEventHandler(objec send,ActionCancelEventArgs ev)
    • 定义一个事件: public event ActionEventHandler Action;
    • 定制自己的EventArgs类: public class  ActionCancelEventArgs:EventArgs{}
    • 定义这个事件的实例对象。class.Action += new ActionCancelEventArgs(Action_Click);
    • 定义这个事件的事件处理函数:Action_Click(object sender, ActionCancelEventArgs ev){}
  • 引发事件
    • windows消息触发
    • 直接显示调用触发函数触发。public void OnAction(object sender, ActionCancelEventArgs ev){if(Action != null) Action(sender,ev);}
  • 接收事件
  • 取消事件 

例子: