博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C#】事件总结
阅读量:6494 次
发布时间:2019-06-24

本文共 1197 字,大约阅读时间需要 3 分钟。

事件是委托的一个很重要的应用,其实事件就是委托的实例,事件一般由外部触发产生

例如:当我们设计一个按钮的控件的时候,我们可以捕获到用户点击按钮,但是我们不知道用户点击按钮时需要进行什么操作,这个时候就可以通过事件来让用户自己定义按钮的操作

下面看看事件的使用

1、事件定义

  1)定义事件委托  2)定义事件参数  3)实例化委托(即事件)  4)定义触发事件函数(用来触发事件)

public delegate void MyEventDelegate(object sender, MyEventArgs e);    public class EventDemo    {        //定义事件        public event MyEventDelegate OnMyEvent;                //定义事件触发函数        public void OnEvent()        {            if (OnMyEvent != null)            {                //执行注册过的事件函数                OnMyEvent(this, new MyEventArgs("事件被触发"));              }        }    }    //定义事件参数类    public class MyEventArgs:EventArgs    {        public string Msg { get; set; }        public MyEventArgs(string msg)        {            this.Msg = msg;        }    }

2、事件的使用

  注册事件,触发事件

class Program    {        static void Main(string[] args)        {            Program p = new Program();            EventDemo demo = new EventDemo();            demo.OnMyEvent += new MyEventDelegate(p.demo_OnMyEvent);    //注册事件                        demo.OnEvent(); //触发事件        }        public void demo_OnMyEvent(object sender, MyEventArgs e)        {            Console.WriteLine("用户自定义的事件函数被执行");        }    }

 

转载地址:http://fskyo.baihongyu.com/

你可能感兴趣的文章
MongoDB入门篇
查看>>
Java 集合08之 ListLinkedList, ArrayList等使用场景和性能分析
查看>>
短期怎么学会云计算?新手学习云计算的规划
查看>>
支配vue框架之模版语法 v-html
查看>>
英伟达发布超强大新型芯片用于人工智能
查看>>
以太坊社区激励金计划:支持开发者利用去中心化技术改变世界
查看>>
详细精确阐述jsBridge执行流程的文章
查看>>
并发编程导论
查看>>
使用AndroidX + ViewModel + LiveData + DataBinding等组件搭建的MVVM快速开发框架
查看>>
[译] 关于 React Router 4 的一切
查看>>
Python虚拟环境指南2019版
查看>>
[译] 移动界面设计的 10 项启发式原则
查看>>
Git自学成才——Pull Request
查看>>
Python2和Python3 urllib对照表
查看>>
凭什么说这是前端最好的时代?
查看>>
用css实现视差效果
查看>>
我的友情链接
查看>>
Oracle11g Data Guard物理备用数据库搭建与配置(第1部分 主数据库实例创建)
查看>>
即时通讯框架T-io之WebSocket协议再之HelloWorld
查看>>
设计模式读书笔记-观察者模式
查看>>