c#委托的问题 本帖最后由 CJavaer 于 2014-04-29 17:26:00 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你需要一个工厂,当然也可以简单点使用微软企业库中地utility或者net4自己带的MEF,将方法注册到容器里面,在从容器里面查找 为了让你理解方便点,我随便google一下“c# IOC utility 依赖配置文件”http://www.cnblogs.com/xishuai/p/3670292.htmlps:MEF一样可以完成这功能,当然自己写一个工厂其实也可以 当然如果我个人我会直接选择MEF,采用importMany方式自动组合出所有方法,然后查找元数据声明上符合这个string地方法传递给委托 private void DoFunction(string FunctionName) { object[] Obj = new object[] { }; MethodInfo vMethodInfo = GetType().GetMethod(FunctionName); if (vMethodInfo == null) { return; } vMethodInfo.Invoke(this, Obj); }Obj 可以用来传参数被调用的function必须是public型的 ProcessDelegate--委托的参数应该是个方法名(就是一个函数名),调用委托的时候再传进来参数,就是被委托的方法要使用的参数,如果sVal是你要传的参数,就是process.Invoke(sVal);当然委托和方法定义的时候函数参数和返回值类型要一致 请教浏览器调用第三方程序原理 Thread.Sleep的问题 为什么mousedown 事件在FORM中的其他控件上点击时不能触发 窗口透明有几种方法? C# 传值 js调用C#后台button点击事件 提问关于C# WINDOWS图形问题(Nord-Tec Snow Flakes) socket 监听端口问题 DataGridView小问题 在三层架构中,用户输入验证是否合法及简单的运算(比如单价*数量=金额)是放在UI层还是业务层?谢谢. 求帮把这种表格做成winform增删改查程序 .net如何快速搜索
http://www.cnblogs.com/xishuai/p/3670292.htmlps:MEF一样可以完成这功能,当然自己写一个工厂其实也可以
private void DoFunction(string FunctionName)
{
object[] Obj = new object[] { };
MethodInfo vMethodInfo = GetType().GetMethod(FunctionName);
if (vMethodInfo == null)
{
return;
}
vMethodInfo.Invoke(this, Obj);
}
Obj 可以用来传参数
被调用的function必须是public型的