Event 事件
事件是建立在委托的基础之上的。
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 事件的更多相关文章
- [.NET] C# 知识回顾 - Event 事件
C# 知识回顾 - Event 事件 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/6060297.html 序 昨天,通过<C# 知识回顾 - ...
- Event事件
妙味课堂-Event事件 1.焦点:当一个元素有焦点的时候,那么他就可以接受用户的输入(不是所有元素都能接受焦点) 给元素设置焦点的方式: 1.点击 2.tab 3.js 2.(例子:输入框提示文字) ...
- JS学习笔记9之event事件及其他事件
-->鼠标事件-->event事件对象-->默认事件-->键盘事件(keyCode)-->拖拽效果 一.鼠标事件 onclick ---------------鼠标点击事 ...
- JS(event事件)
常用的event事件: 属性 此事件发生在何时... onabort 图像的加载被中断. onblur 元素失去焦点. onchange 域的内容被改变. onclick 当用户点击某个对象时调用的事 ...
- event事件学习小节
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Javascript 事件对象(二)event事件
Event事件: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" ...
- js event 事件兼容浏览器 ie不需要 event参数 firefox 需要
js event 事件兼容浏览器 ie不需要 event参数 firefox 需要 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 ...
- PHP event 事件机制
PHP event 事件机制 <?php /* * PHP 事件机制 */ class baseClass{ private $_e; public function __set($name ...
- trigger()的event事件对象之坑
问题引入,先贴一段有问题的代码,如果你对 trigger() 这个函数了解不透彻,还真看不出这段代码错在哪.完成的功能是样式转换器,想让页面在加载后自行触发点击事件隐藏三个按钮,但是效果如图并没有隐 ...
- Event事件详解
首先提到event,先要明白event的产生,也要先明白焦点,什么是焦点.焦点 : 使浏览器能够区分用户输入的对象,当一个元素有焦点的时候,那么他就可以接收用户的输入. 我们可以通过一些方式给元素设置 ...
随机推荐
- ArcGIS(ESRI)的发展历史和版本历史(简介)
作者:fenghuayoushi 来源:CSDN 原文:https://blog.csdn.net/fenghuayoushi/article/details/6677360 ESRI公司介绍 ...
- Python之路 - Socketserver实现多并发
Python之路 - Socketserver实现多并发 阅读指引
- 学习QT——GUI的基础用法(2)
1.listWidget列表 在构造函数里面添加: ; i<; i++) { ui->listWidget->addItem(QString::number(i)+"ite ...
- 定时删除文件夹"$1"下最后修改时间大于当前时间"$2"天的文件
shell 脚本: #!/bin/bash now=`date "+%Y-%m-%d_%H:%M:%S"` #获取当前时间 echo "当前时间: " ...
- Java NIO Tutorial
Java NIO Tutorial Jakob JenkovLast update: 2014-06-25
- 常见三种字符编码的区别:ASCII、Unicode、UTF-8
什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255( ...
- html实现导航栏效果
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 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 ...
- 源码调用ffmpeg库时,需要注意接口为C接口
即引用相关头文件时候,要使用extern "C"{}来包含. 关于extern "C"{}的详情,参考:http://www.cnblogs.com/skyne ...
- YARN 的深入简出
1.YARN的产生背景 2.YARN的执行流程 3.YARN的概述 4.YARN的环境搭建 5.YARN的架构 6.如何提交作业到YaRN上执行 YARN的产生MapReduce1.x存在多种问题单节 ...