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

相关推荐
晚秋大魔王4 分钟前
OpenHarmony 开源鸿蒙南向开发——linux下使用make交叉编译第三方库——wget
java·linux·运维·开发语言·华为·harmonyos
heath ceTide8 分钟前
轻量、优雅、高扩展的事件驱动框架——Hibiscus-Signal
java·开发语言
_extraordinary_8 分钟前
Java 常用的Arrays函数
java·开发语言
_extraordinary_12 分钟前
Java 类和对象
java·开发语言
Aliano21716 分钟前
TestNGException ClassCastException SAXParserFactoryImpl是Java自带的Xerces解析器——解决办法
java·开发语言·python
漫谈网络20 分钟前
回调函数应用示例
开发语言·python·回调函数
亚林瓜子35 分钟前
pyenv简单的Python版本管理器(macOS版)
开发语言·python·macos·pyenv
夜松云35 分钟前
Qt信号槽机制与UI设计完全指南:从基础原理到实战应用
开发语言·qt·ui·qt designer·布局管理·参数传递·qt信号槽
珂朵莉MM1 小时前
2024 睿抗机器人开发者大赛CAIP-编程技能赛-专科组(国赛)解题报告 | 珂学家
开发语言·人工智能·算法·leetcode·职场和发展·深度优先·图论
菥菥爱嘻嘻1 小时前
JS手写代码篇---手写 new 操作符
开发语言·javascript·原型模式