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; |

相关推荐
峥嵘life7 小时前
Android16 311Y3 EAP-TLS 网络连接失败分析与修复总结
android·开发语言·人工智能·php
mqiqe10 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
gugucoding10 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
Nebula_g11 小时前
JavaSE基础语法:面向对象高级(代码中的成分)
java·开发语言·编程·javase·技术栈·高级语法
for_ever_love__11 小时前
python基础语法学习: 异常的传递性
开发语言·python·学习
依然鸣11 小时前
PTA团体程序设计天梯赛L1真题讲解L1-077-080
开发语言·c++·算法·深度优先·pat考试·图论
byxdaz12 小时前
QT中服务使用
开发语言·qt
库玛西13 小时前
现代 C++ 智能指针全景指南:从 RAII 思想到工业级实践
c语言·开发语言·c++·笔记·面试
caimouse13 小时前
ReactOS 图形系统分析(19):颜色转换对象 — XLATEOBJ(xlateobj.c/h)
c语言·开发语言
liulilittle14 小时前
无锁并发容器的设计与实现原理
开发语言·c++·set·map·并发·无锁·lock-free