zoukankan      html  css  js  c++  java
  • 事件

    发布器类:

    定义一个委托,定义一个基于委托的事件,定义事件触发

    订阅器类:

    定义方法

    其他类:

    new发布器类,new 订阅器类,然后把方法绑定到事件,触发。

    public class Test
    {
        // ….
      public delegate void TestHandler();//无参数,无返回委托
      public event TestHandler TestEvent;//事件
      public void OnTestHandler()//调用
      {
        if(TestEvent != null) //不等于null 说明该事件已经注册有函数
        {
          this.TestEvent();
        }
      }
    }

    class Program
    {
      static void Main(string[] args)
      {
        Test model = new Test();//实列
        model.TestEvent += model_TestEvent;//为model 注册TestEvent事件的执行方法   这里可以绑定多个方法,然后在触发时多个方法按顺序执行

       //model.TestEvent += model_TestEvent1
        model.OnTestHandler();//调用引发事件
      }
      static void model_TestEvent()//事件执行方法,该方法样式要与委托一致(参数,返回值)  该方法可以放到单独的发布器类中
      {
        Console.WriteLine("这是最简单的事件");
      }
    }

    自动驱动未来
  • 相关阅读:
    第二次作业
    《自动化技术中的进给电气传动》读书笔记1.1-1.2
    证券投资分析
    微信官方文档概述
    联想拯救者Y7000电池无法充电问题
    Ubuntu用户权限管理
    证券市场基础知识
    Markdown All in One使用教程
    Markdown学习笔记
    第九周
  • 原文地址:https://www.cnblogs.com/rb-huang/p/13355359.html
Copyright © 2011-2022 走看看