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的产生,也要先明白焦点,什么是焦点.焦点 : 使浏览器能够区分用户输入的对象,当一个元素有焦点的时候,那么他就可以接收用户的输入. 我们可以通过一些方式给元素设置 ...
随机推荐
- redmine安装-BitNami 提供的一键安装程序
redmine安装-BitNami 提供的一键安装程序 博客分类: REDMINE redmine安装redmine一键安装bitNami redmine BitNami 提供re ...
- iOS Dev (25) 解决“The executable was signed with invalid entitlements.”问题
2014-01-10 10:34 5240人阅读 评论(1) 收藏 举报 目录(?)[+] iOS Dev (25) 解决“The executable was signed with inv ...
- shell 脚本传参
在 shell 中我们会见到 $0.$1.$2这样的符号,这是什么意思呢? 简单来说 $0 就是你写的shell脚本本身的名字,$1 是你给你写的shell脚本传的第一个参数,$2 是你给你写的sh ...
- Java的学习02
今天依旧记录一下今天的学习的知识. /** * 测试StringBuilder StringBuffer,可变字符序列 * String对象称为“不可变对象"指的是对象内部成员变量的值无法再 ...
- CentOS7下解决yum install mysql-server没有可用包
# wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm -- http://repo.mysql.com/mysq ...
- metasploit framework(一):基本使用
它位于/usr/share/metasploit-framework 进入到modules目录,有六大模块 exploits:系统漏洞利用的流程,对系统漏洞注入一些特定的代码,使其覆盖程序执行寄存器, ...
- jquery获取焦点位于的元素
参考 https://zhidao.baidu.com/question/497311181016643684.html if ($(":focus").length > 0 ...
- Jenkins+sonar7.3集成
Jenkins安装请参考:https://blog.csdn.net/CheNorton/article/details/50327825?utm_source=copy Jenkins更新请参考:h ...
- leetcode 中等题(1)
2. Add Two Numbers(中等) /** * Definition for singly-linked list. * struct ListNode { * int val; * Lis ...
- TOJ2811: Bessie's Weight Problem(完全背包)
传送门(<---可以点的) 描述 Bessie, like so many of her sisters, has put on a few too many pounds enjoying t ...