C# 使用匿名函数解决EventHandler参数传递的难题

 更新时间:2009年05月15日 00:03:42   作者:  
C#动态生成PictureBox并绑定右键菜单,实现删除图片
首先,动态生成PictureBox,很简单,
PictureBox box = new PictureBox() ;
box.ImageLocation = imageRoad ;
其次,给PictureBox添加右键菜单,也不难,
ContextMenu menu = new ContextMenu();
box.ContextMenu = menu ;
然后,要给右键菜单增加“删除”项,并实现删除图片事件。这个,比较麻烦。
MenuItem item = new MenuItem("删除") ;
menu.MenuItems.Add( item , new EventHandler( item_Click )) ;
void item_Click(object sender, EventArgs e)
{
// 增加删除图片的功能
// 1、获取图片对象
// 2、删除图片
}
在item_Click方法中,由于无法获得图片对象的值,所以无法进行删除操作。除非,在item_Click方法中,能够将PictureBox对象作为参数传递进来。这个,没想出来怎么实现。
尝试使用匿名方法,
menu.MenuItems.Add( item, delegate(Object o,EventHandler e){ box.ImageLocation = "" ; });
由于匿名方法是在方法体内,因此,可以将box作为参数传递进来。
总结:使用匿名方法实现事件参数的传递,因为匿名方法可以使用外部参数。
关键词:事件、委托、匿名方法
语言平台:C# 2.0及以上

相关文章

  • C#实现三元组的使用示例

    C#实现三元组的使用示例

    本文介绍了C#中的三元组数据结构,以及如何使用三元组在C#中进行一些特定的计算,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • C#拼图游戏编写代码(2)

    C#拼图游戏编写代码(2)

    这篇文章主要为大家详细介绍了C#拼图游戏的编写代码下篇,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-04-04
  • C#特性(Attribute)

    C#特性(Attribute)

    这篇文章介绍了C#的特性(Attribute),文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • C#编写COM组件的方法分析

    C#编写COM组件的方法分析

    这篇文章主要介绍了C#编写COM组件的方法,结合实例形式分析了C#编写COM组件的具体步骤与相关实现技巧,需要的朋友可以参考下
    2017-06-06
  • winform dateTime数据类型转换方法

    winform dateTime数据类型转换方法

    这篇文章主要介绍了winform dateTime数据类型转换方法,需要的朋友可以参考下
    2017-02-02
  • C# Soap调用WebService的实例

    C# Soap调用WebService的实例

    下面小编就为大家带来一篇C# Soap调WebService的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • 用c# 自动更新程序

    用c# 自动更新程序

    这篇文章主要介绍了用c# 自动更新程序的代码示例,帮助大家更好的理解和使用c#编程语言,感兴趣的朋友可以了解下
    2020-11-11
  • C# 文件安全管理需要注意的

    C# 文件安全管理需要注意的

    这篇文章主要介绍了C# 文件安全管理需要注意的,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-03-03
  • C#利用IDbCommand实现通用数据库脚本执行程序

    C#利用IDbCommand实现通用数据库脚本执行程序

    在.net 应用中,在数据库中执行脚本程序是经常用到的功能,如数据操作(新增、修改、删除等),执行一个存储过程等,本文将介绍如何通过利用IDbCommand 实现通用数据库脚本执行程序,感兴趣的朋友可以参考下
    2024-04-04
  • C#中使用FilleStream实现视频文件的复制功能

    C#中使用FilleStream实现视频文件的复制功能

    这篇文章主要介绍了C#中使用FilleStream实现视频文件的复制功能,本文通过实例代码给大家介绍的非常想详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09

最新评论