• 如何理解和实现c#事件


    网上有很多关于事件是如何实现的,但看来看去都不是很明了。

    有时候很多网站都转载相同的内容,千篇一律,所以自己打算好好研究一下这东东究竟如何实现。

    Step 1 什么是事件

    究竟什么是事件呢?想到事件,就让我想到911. 记得那段事件大家都在谈911事件。什么是911事件呢?就是飞机撞大楼这个动作导致了911事件的产生。但在c#中又如何理解呢。其实所谓事件,就是由某个对象发出的消息,这个消息标志着某个特定的行为发生了,或者某个特定的条件成立了。比如用户点击了鼠标,这一单击就会引起Windows给按钮消息处理程序发送一个消息,这就是OnClick事件。那个触发(raise)事件的对象称为事件的发送者(event sender),捕获并响应事件的对象称为事件的接收者(event receiver)。在winform里面,这个发送者就是我们单击的那个按钮,响应者或者叫接收者就是winform窗体。

    下面就用winform和button来举例子

    Step 2 定义button类

    Button

     Step 3定义参数类

    NewEventArgs

    Step 4 定义WinForm类

    WinForm

    Step 5 运行测试

    Test

     Step 6 小结

    测试结果:

    button

    first button

    button

    second button

    现在觉得event其实就这样,关键是理解委托的概念,这里的button1.Click += new OnClickEventHandler(btnClick);和button2.Click += new OnClickEventHandler(btnClick);其实就是委托实例而已。其次要了解事件sender对象和receiver之间的关系。

    最后希望能和大家共同探讨技术问题。

    参考:

    http://www.csharphelp.com/archives/archive253.html

  • 相关阅读:
    一个短信验证码倒计时插件
    记一次图片优化经历
    前端开发中两种常见的图片加载方式
    《javascript面向对象精要》读书笔记
    less hack 兼容
    第一次项目总结
    你总说毕业遥遥无期,可转眼就各奔东西
    【翻译】理念:无冲突的扩展本地DOM原型
    【翻译】jQuery是有害的
    202002280156-《统治世界的10种算法(摘自极客大学堂)》
  • 原文地址:https://www.cnblogs.com/matthew/p/1270671.html
Copyright © 2020-2023  润新知