zoukankan      html  css  js  c++  java
  • 如何编写属于自己的事件集合

    public class MyEvent
    {
    /// <summary>
    /// 定义某一类事件的名称
    /// </summary>
    private const string EventName = "MyEvent";
    /// <summary>
    /// 定义某一类事件的名称
    /// </summary>
    private const string EventName1 = "MyEvent1";
    /// <summary>
    /// 事件集合
    /// </summary>
    private readonly Dictionary<string, List<object>> EventDic = new Dictionary<string, List<object>>();

    /// <summary>
    /// 定义事件代理句柄
    /// </summary>
    /// <param name="obj"></param>
    public delegate void MyHandler(object obj);
    /// <summary>
    /// 定义事件代理句柄
    /// </summary>
    /// <param name="obj"></param>
    public delegate void MyHandler1(string obj);

    public event MyHandler MyEvents
    {
    add
    {
    EventDic[EventName].Add(value);
    }
    remove
    {
    EventDic[EventName].Remove(value);
    }
    }
    public event MyHandler1 MyEvents1
    {
    add
    {
    EventDic[EventName1].Add(value);
    }
    remove
    {
    EventDic[EventName1].Remove(value);
    }
    }

    public MyEvent()
    {
    EventDic.Add(EventName, new List<object>());//添加一类事件集合
    EventDic.Add(EventName1, new List<object>());//添加一类事件集合
    }

    public void Run()
    {
    if (EventDic[EventName].Count == 0)
    return;
    foreach (object obj in EventDic[EventName])
    {
    (obj as MyHandler)(1);
    }
    }
    public void Run1()
    {
    if (EventDic[EventName1].Count == 0)
    return;
    foreach (object obj in EventDic[EventName1])
    {
    (obj as MyHandler1)("");
    }
    }

    }
  • 相关阅读:
    jQuery 元素操作
    jQuery 文本属性值
    jQuery 属性操作
    jQuery 效果
    sass入门学习篇(二)
    sass入门学习篇(一)
    CSS3 基础知识[转载minsong的博客]
    js倒计时,秒倒计时,天倒计时
    webstorm快捷键收集【转发】
    placeholder各种浏览器兼容问题
  • 原文地址:https://www.cnblogs.com/magic_evan/p/2306141.html
Copyright © 2011-2022 走看看