C#匿名方法增加、删除委托

匿名方法给我们带来了方便,那么如何增加删除匿名方法中附加的委托(事件)呢

一般写法:

|---------|----------------------------------------------------------------------|
| 1 2 3 4 | this``.Loaded += (sender, e) => ``{ ``//Do something ``}; |

进化写法:

|---------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 | this``.Loaded += ``new RoutedEventHandler(FormulaAssign_Loaded); void FormulaAssign_Loaded(``object sender, RoutedEventArgs e) ``{ ``this``.Loaded -= ``new RoutedEventHandler(FormulaAssign_Loaded); ``//do something ``} |

优化写法:

|---------|--------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 | RoutedEventHandler eventHander = ``null``; eventHander = (``object sender, RoutedEventArgs e) => { ``//do something |

|-------|-------------------------------------------------------------------------|
| 1 2 3 | ``this``.Loaded -= eventHander; }; this``.Loaded += eventHander; |

相关推荐
天若有情6735 小时前
程序员原创|借鉴JS事件冒泡,根治电脑文件混乱的“冒泡整理法”
开发语言·javascript·windows·ecmascript·电脑·办公·日常
特种加菲猫6 小时前
继承,一场跨越时空的对话
开发语言·c++
工程师0077 小时前
C# 继承、多态、虚方法表(VTable)原理
c#·多态·继承·虚方法表
玩转单片机与嵌入式7 小时前
玩转边缘AI(TInyML):需要掌握的C++知识汇总!
开发语言·c++·人工智能
茉莉玫瑰花茶7 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
AI人工智能+电脑小能手8 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
张健11564096489 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员9 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试
夜猫逐梦9 小时前
【逆向经验】一篇文章讲透为什么CE搜不到Python游戏的内存值
开发语言·python·游戏