读书整理-关于.net内置事件的驱动原理浅析

原创 2013年12月05日 09:40:26

佩服下自己读书的速度,看完事件原理这一部分的内容,我比较乱,接着blog来整理下思路,就从反思.net内置事件入手,我们都知道 当点击 键盘操作 鼠标操作等操作都会映射到相应的事件 最普遍的 button click事件 我们就从这里入手 逐步分析 事件的机制 web开发中 button 继承自 web.control 他有一个 内部的事件  public event EventHandler Click

这是.net标准事件 需要两个参数 就是我们常见的 sender 和 e 这个事件有两个重要的描述 一个是 webcategory action 表示这个事件属于 活动分类,另一个 websysdescription button_onclick 是不是很熟悉 没错这就是事件默认的发起事件的方法名 通过反编译 可以看到 这个事件内部 有自己的 add 和removed 方法 来做注册和解除注册操作

add{base.event.addhandler(event.click,value)} removed{base.event.removeHandler(event.click,value)}通过调用 基类的 event属性的add和removed方法来注册和移除 这里的基类是? 回过头来看 button类 public class button:webControl 明白了 base指的是 webcontrol 那我们来看 webcontrol中 event属性的定义 没有? 再看 上面 webcontrol:control 原来还有一层 再看 擦 都没有 找不到event 我们从addHandler 入手 看看这个方法 究竟在哪 回过头看 啊哈原来是 events 好吧 2了 反编译下 看到 这是一个 control中protected 属性 只限本类和子类访问 实例不能访问 看到这个属性是 eventHandlerList 类型 并且是只读的 我们再来看下 eventHandlerList 这是一个类型 属于 system.componentModel 命名空间 实现了 Idisposed 接口 可以通过 using来 智能回收资源 从字面理解就是 事件委托列表 不深究 回到 刚才  我们看 addhandler 的两个参数 写着 eventclick value 看起来让人容易误解 反编译 可以看到 其实 是 object 和 delegate 其中 value 还是一个 eventHandler eventclick 是一个 button 内部的私人的对象型 字段 只能在button类内部访问 并且是只读的

好了整理下思路,button 的click 事件 被 指定为某钟事件处理程序的过程 button 内部有一个 虚方法 onclick 通过判断eventclcik事件来 形成默认的事件处理程序,addHandler 有一套自我判断委托是否合理的逻辑,技术不够不做深究,button有一个静态的构造方法 来初始化 一个object 对象赋给 eventclick object  而eventclick 是只读的

相关文章推荐

ASP.NET中Session实现原理浅析

  • 2011年08月29日 11:41
  • 238KB
  • 下载

驱动层与应用层的事件同步(主动防御原理浅析)

在电脑上,大家都装有各种各样的防护

asp.net 请求、处理、响应原理浅析

作为一名asp.net开发人员,不了解asp.net该是一件多么可怕的事。当然,如果你对asp.net原理不了解也是可以做项目的,可你要想继续提升自己,拿高工资,实在就有点难了。 于是乎,为了追求自己...

HTTP协议/IIS 原理及ASP.NET运行机制浅析

本文是转自火龙果 http://www.uml.org.cn/wenzhang/artindex.asp 前言  原文章地址http://www.uml.org.cn/net/2013061...

【小松教你手游开发】【面试必读(编程基础)】.NET垃圾回收:原理浅析

http://blog.jobbole.com/85435/

HTTP协议/IIS 原理及ASP.NET运行机制浅析【图解】

转自:http://www.uml.org.cn/net/201306193.asp 前言 前一段在整理邮件的时候发现几年前和CDD老师交流时的一份邮件.下面是简单摘要: “从技术角...

ASP.NET页面请求原理浅析

原文件链接:http://developer.51cto.com/art/200906/130449.htm

HTTP协议/IIS 原理及ASP.NET运行机制浅析

原文章地址http://www.uml.org.cn/net/201306193.asp “从技术角度来说,无论哪一个阵营,跟新技术都是不可避免的,也是很累的,当然作为一个程序员...
  • SJB2MLN
  • SJB2MLN
  • 2017年08月09日 17:13
  • 148

HTTP协议/IIS 原理及ASP.NET运行机制浅析【图解】(3)

ASP.NET运行机制 在IIS6图示中我们分析到“ AppManagerAppDomainFactory 的 Create 方法为 Application 创建一个 Application Dom...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:读书整理-关于.net内置事件的驱动原理浅析
举报原因:
原因补充:

(最多只允许输入30个字)