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)("");
}
}

}

 

相关文章:

  • 2022-12-23
  • 2022-03-02
  • 2022-12-23
  • 2021-08-04
  • 2022-03-01
  • 2022-12-23
猜你喜欢
  • 2021-12-23
  • 2022-12-23
  • 2022-02-10
  • 2021-11-23
  • 2021-06-01
  • 2022-12-23
  • 2021-10-29
相关资源
相似解决方案