C# Action委托类型

问题:项目中用到动态Dll,需要用到反射的知识。先在一个解决方案中,有一个项目时类库FrmProject,类库中包含有窗体,另一个项目是运行时的主窗体 FrmMain!主窗体是通过动态加载FrmProject.Dll! 类库中的窗体不能直接在主窗体中实例出来。现需要在FrmProject类库中的窗体点击一个复选框后,将得到的结果传递给主窗体! 最大问题的是,不能通过自定义的委托类型来实现,这个有点难说明白,估计只有遇到了才比较清楚。

最后是通过 Action<> 委托类型 来实现!以下是Action<>的定义:

#region 程序集 mscorlib.dll, v4.0.0.0
// C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\mscorlib.dll
#endregion

namespace System
{
    // 摘要: 
    //     封装一个方法,该方法只有一个参数并且不返回值。
    //
    // 参数: 
    //   obj:
    //     此委托封装的方法的参数。
    //
    // 类型参数: 
    //   T:
    //     此委托封装的方法的参数类型。
    public delegate void Action<in T>(T obj);
}

比较容易理解的例子:Action委托类型   !

Action是一个无返回值的委托,Func是一个有返回值的委托,具体用法可以百度或是看帮助文档!


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值