关键词搜索

源码搜索 ×
×

C# 清除事件绑定的函数

发布2015-12-09浏览9493次

详情内容

原文地址:点击打开链接

  1. #region 清除事件绑定的函数
  2. /// <summary>
  3. /// 清除事件绑定的函数
  4. /// </summary>
  5. /// <param name="objectHasEvents">拥有事件的实例</param>
  6. /// <param name="eventName">事件名称</param>
  7. public static void ClearAllEvents(object objectHasEvents, string eventName)
  8. {
  9. if (objectHasEvents == null)
  10. {
  11. return;
  12. }
  13. try
  14. {
  15. EventInfo[] events = objectHasEvents.GetType().GetEvents(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
  16. if (events == null || events.Length < 1)
  17. {
  18. return;
  19. }
  20. for (int i = 0; i < events.Length; i++)
  21. {
  22. EventInfo ei = events[i];
  23. if (ei.Name == eventName)
  24. {
  25. FieldInfo fi = ei.DeclaringType.GetField(eventName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
  26. if (fi != null)
  27. {
  28. fi.SetValue(objectHasEvents, null);
  29. }
  30. break;
  31. }
  32. }
  33. }
  34. catch
  35. {
  36. }
  37. }
  38. #endregion


相关技术文章

最新源码

下载排行榜

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载