真是的,这个东西看了不用,一段时间后就忘了。

delegate相当于函数指针,可以把其他函数加入到delegate实体中,这样用调用delegate实体来实现对所加入函数的调用。

比如

public delegate deleTest(string name);

可以deleTest test = new deleTest(testFun);把testFun挂到test上。

其中testFun函数的签名要和deleTest的签名一致。

然后test(“dear”);就可以调用testFun()了。

事件则是特殊签名的delegate.

public delegate void EventHandler(object sender, System.EventArgs e);

而event呢,则是一个delegate的list,可以让很多delegate挂在上面,这样时间发生的时候,就可以调用所有挂在event上面的函数了。

一般会写一个event调用函数来保护event的触发。如

protected void OnTestEvent(System.EventArgs e)

{

if(testevent!=null) testevent(this,e);

}

转载于:https://www.cnblogs.com/climberluoxi/archive/2009/01/07/1371303.html

C# delegate and event相关推荐

  1. c# 带返回值的action_C#知识点讲解之C#delegate、event、Action、EventHandler的使用和区别...

    今天来讲一讲<C#delegate.event.Action.EventHandler的使用和区别> 目录 所以,event应运而生 所以,EventHandler应运而生 所以,Acti ...

  2. C#中的delegate和event (转)

    C#中的delegate和event 在基于Windows平台的程序设计中,事件(event)是一个很重要的概念.因为在几乎所有的Windows应用程序中,都会涉及大量的异步调用,比如响应点击按钮.处 ...

  3. C#中的delegate和event作用及区别

    Delegate delegate是C#中很重要的语法. 委托是一种引用类型,表示对具有特定参数列表和返回类型的方法的引用. 声明了delegate的属性都会继承自Delegate类. 使用单播委托类 ...

  4. C# delegate、event、Action、Func使用案例解析

    C# 中 delegate.event.Action.Func使用案例解析 一:delegate与event配合使用 public static class Evt_Test{public stati ...

  5. msdn 上的关于delegate和event的一个例子,理解后加点评论

    using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace Event ...

  6. C#中Delegate和Event以及它们的区别(转载)

    一.Delegate委托可以理解为一个方法签名. 可以将方法作为另外一个方法的参数带入其中进行运算.在C#中我们有三种方式去创建委托,分别如下: public delegate void Print( ...

  7. C# 委托(Delegate) 事件(Event)应用详解

    委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易.它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每 ...

  8. delegate和event(转载too)

    从 前,在南方一块奇异的土地上,有个工人名叫彼得,他非常勤奋,对他的老板总是百依百顺.但是他的老板是个吝啬的人,从不信任别人,坚决要求随时知道彼得的 工作进度,以防止他偷懒.但是彼得又不想让老板呆在他 ...

  9. C# delegate与event,委托与事件

    文章目录 委托 示例 事件 实例 博主写作不容易,孩子需要您鼓励 万水千山总是情 , 先点个赞行不行 委托和事件是C#中两个比较复杂的概念,这篇文章介绍两个概念与基本用法,让大家理解C#中的事件处理机 ...

最新文章

  1. tomcat启动出现闪退_(转)Tomcat 启动后 “闪退”
  2. 百度线下赛道报名通知!
  3. zoj - 2112 带修改主席树 + 空间优化
  4. 类似TH养车的电商系统设计思路
  5. C语言运行gis空间叠加分析,GIS空间叠加分析与缓冲区分析.doc
  6. HelloDjango 启动!免费带你学Django全栈!
  7. c# 程序调试出现“未在本地计算机上注册“Microsoft.Jet.OLEDB.4.0”提供程序。”...
  8. SDN和MPLS有什么区别?
  9. $bzoj1079-SCOI2008$ 着色方案 $dp$
  10. ubuntu gedit 工具菜单下没有 Manage external tools
  11. 浪潮n系列服务器指示灯_中国服务器市场,浪潮跑出,联想和华为出现衰退
  12. html缓存失败是什么,HTML5离线“应用程序缓存错误事件:清单读取失败(-1)”...
  13. 计算机快捷截图方式,电脑如何快速截图,电脑快速截屏的几种方法
  14. sokit socket调试工具
  15. (z)无杂散动态范围SFDR--影响通信机性能的因素
  16. [雨松MOMO程序研究院]Unity3D研究院之构建游戏框架与导出IOS项目(一)
  17. Charles 在线破解工具
  18. java下拉刷新上拉加载_使用PullToRefresh实现下拉刷新和上拉加载
  19. 数据分析进阶-Excel绘制分段折线图
  20. 1、Dreamweaver工具的使用

热门文章

  1. 计算机基础教案(XP操作系统)
  2. Apache软件基金会宣布Apache Unom成为顶级项目
  3. SDMemoryCache中的NSMapTable
  4. js 区分 safari chrome iso
  5. [NHibernate]事务
  6. 编程是一种对你的身体健康十分有害的工作
  7. 命名式ACL配置实例
  8. 20162309单步追踪数组及查找课下补分博客
  9. ProtoBuffer由.proto文件生成.cc/.h
  10. nodeJs多线程 -- 学习记录