事件是建立在委托的基础之上的。

http://www.cnblogs.com/lystory/p/5085786.html

    public class 事件参数
{
public 事件参数(string s) { Text = s; }
public String Text { get; private set; } // readonly
} public class 事件发布者
{
/// <summary>
/// 申明一个委托
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
public delegate void 委托1(object sender, 事件参数 e); /// <summary>
/// 申明一个委托型事件
/// </summary>
public event 委托1 事件1; public virtual void 执行(string msg)
{ ///如果事件被订阅(有订阅者)传信号给订阅者(这个信息是两个参数,object sender, 事件参数 e )
if (事件1 != null)
事件1(this, new 事件参数(msg));
}
} class Program
{
static void Main(string[] args)
{ 事件发布者 f = new 事件发布者(); ///订阅这个事件
f.事件1 += f_事件1; f.执行("帮我做一件事情"); Console.ReadLine(); } /// <summary>
/// 事件接收者
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
static void f_事件1(object sender, 事件参数 e)
{
Console.WriteLine("我是事件接收者:你给我的命令是:{0}", e.Text);
} }

运行结果:

C#事件在编程中无处不在。我们的OnClick,其背后都是事件做出来的

观察者模式就是以事件为基础,还有多线程编程中,离不开事件。

理解了委托就能理解事件,事件是建立在委托的基础之上。

参考文档

http://www.cnblogs.com/reommmm/archive/2009/03/23/1419573.html

Event 事件的更多相关文章

  1. [.NET] C# 知识回顾 - Event 事件

    C# 知识回顾 - Event 事件 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6060297.html 序 昨天,通过<C# 知识回顾 - ...

  2. Event事件

    妙味课堂-Event事件 1.焦点:当一个元素有焦点的时候,那么他就可以接受用户的输入(不是所有元素都能接受焦点) 给元素设置焦点的方式: 1.点击 2.tab 3.js 2.(例子:输入框提示文字) ...

  3. JS学习笔记9之event事件及其他事件

    -->鼠标事件-->event事件对象-->默认事件-->键盘事件(keyCode)-->拖拽效果 一.鼠标事件 onclick ---------------鼠标点击事 ...

  4. JS(event事件)

    常用的event事件: 属性 此事件发生在何时... onabort 图像的加载被中断. onblur 元素失去焦点. onchange 域的内容被改变. onclick 当用户点击某个对象时调用的事 ...

  5. event事件学习小节

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Javascript 事件对象(二)event事件

    Event事件: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" ...

  7. js event 事件兼容浏览器 ie不需要 event参数 firefox 需要

    js event 事件兼容浏览器    ie不需要 event参数   firefox 需要 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...

  8. PHP event 事件机制

    PHP event 事件机制   <?php /* * PHP 事件机制 */ class baseClass{ private $_e; public function __set($name ...

  9. trigger()的event事件对象之坑

    问题引入,先贴一段有问题的代码,如果你对 trigger()  这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐 ...

  10. Event事件详解

    首先提到event,先要明白event的产生,也要先明白焦点,什么是焦点.焦点 : 使浏览器能够区分用户输入的对象,当一个元素有焦点的时候,那么他就可以接收用户的输入. 我们可以通过一些方式给元素设置 ...

随机推荐

  1. ArcGIS(ESRI)的发展历史和版本历史(简介)

    作者:fenghuayoushi 来源:CSDN 原文:https://blog.csdn.net/fenghuayoushi/article/details/6677360   ESRI公司介绍   ...

  2. Python之路 - Socketserver实现多并发

    Python之路 - Socketserver实现多并发 阅读指引

  3. 学习QT——GUI的基础用法(2)

    1.listWidget列表 在构造函数里面添加: ; i<; i++) { ui->listWidget->addItem(QString::number(i)+"ite ...

  4. 定时删除文件夹"$1"下最后修改时间大于当前时间"$2"天的文件

    shell 脚本: #!/bin/bash now=`date "+%Y-%m-%d_%H:%M:%S"`      #获取当前时间 echo "当前时间: " ...

  5. Java NIO Tutorial

    Java NIO Tutorial     Jakob JenkovLast update: 2014-06-25

  6. 常见三种字符编码的区别:ASCII、Unicode、UTF-8

    什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255( ...

  7. html实现导航栏效果

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. springboot org.hibernate.MappingException: No Dialect mapping for JDBC type: -9

    参考 https://www.cnblogs.com/luxd/p/8316243.html https://www.cnblogs.com/s648667069/p/6478559.html @Co ...

  9. 源码调用ffmpeg库时,需要注意接口为C接口

    即引用相关头文件时候,要使用extern "C"{}来包含. 关于extern "C"{}的详情,参考:http://www.cnblogs.com/skyne ...

  10. YARN 的深入简出

    1.YARN的产生背景 2.YARN的执行流程 3.YARN的概述 4.YARN的环境搭建 5.YARN的架构 6.如何提交作业到YaRN上执行 YARN的产生MapReduce1.x存在多种问题单节 ...