Mir*_*roo 3 c# event-handling mouseevent eventargs
我有这个事件处理程序
Temp.MouseLeftButtonDown += new MouseButtonEventHandler(Temp_MouseLeftButtonDown);
但我想发送一些参数来访问Temp_MouseLeftButtonDown函数.我怎么能分配它?
你不能直接这样做,因为事件处理程序只能期望与MouseButtonEventHandler的兼容签名.
如果您使用的是C#3,最简单的方法是使用lambda表达式 - 类似于:
Temp.MouseLeftButtonDown +=
(sender, args) => Temp_MouseLeftButtonDown(sender, args, "extra argument");
Run Code Online (Sandbox Code Playgroud)
这有帮助吗?当然,如果您不需要发送方和事件参数,则不必提供它们.
在C#2中,您可以以相同的方式使用匿名方法.
| 归档时间: |
|
| 查看次数: |
1367 次 |
| 最近记录: |