zoukankan      html  css  js  c++  java
  • C#特性知识图谱三、事件

    三、事件

    3.1 事件简介

    在事件驱动的软件系统中,符合某种预设条件的情形出现是,一个事件就会被触发。

    3.1.1 事件三要素

    • 事件源:激发事件的对象
    • 事件信息:事件本身说携带的信息
    • 事件响应者:响应时间的处理逻辑代码
      示例:
      image
      image

    3.1.2 事件的特点

    一个事件源可以有多个响应者即一对多关联。
    事件可以看成是一个多路委托变量,事件的响应方法则是被此多路委托变量所引用。

    3.2 定义事件的方式

    3.2.1 利用委托自定义事件

    image
    image
    image
    image

    3.2.2 利用event自定义事件

    image
    image

    事件只能有事件源对象内部自己激发,外界服务通过访问委托变量直接触发事件。

    3.3 .Net事件揭秘

    3.3.1 事件示例:Click事件

    Click事件定义:
    image
    Click事件的委托定义:
    image
    .Net事件触发与响应机制是建立在委托之上的。

    3.4 事件的应用示例

    运行时设定事件的响应函数
    在程序运行过程中动态设定事件响应程序。
    image

    3.5 自定义事件开发技巧

    3.5.1 使用自定义事件的标准方式

    • 定义一个事件参数类使其从EventArgs类派生,让事件参数从EventArgs类派生是通用方法(.Net编程套路)
      image
    • 定义一个事件委托
      image
    • 实现功能
      image
      image

    3.5.2 使用泛型委托自定义事件

    .Net基类库中定义了一个通用的泛型事件委托,可直接使用这一泛型委托,无须定义一个新的事件委托类型。
    泛型事件委托类型
    image
    直接使用泛型事件委托示例
    image

  • 相关阅读:
    第06组 每周小结 (1/3)
    第06组 Beta冲刺 总结
    第06组 Beta冲刺(5/5)
    爬虫第六次作业
    第06组 Beta冲刺 (4/5)
    第06组 Beta冲刺 (3/5)
    第06组 Beta冲刺 (2/5)
    《机器学习》第二次作业——第四章学习记录和心得
    软工实践个人总结
    第09组 每周小结 (3/3)
  • 原文地址:https://www.cnblogs.com/tjubuntu/p/15434795.html
Copyright © 2011-2022 走看看