读书人

c# 中怎么将一个方法的名称作为另一个

发布时间: 2012-03-09 21:42:54 作者: rapoo

c# 中如何将一个方法的名称作为另一个方法的参数?
如以下的类中,如何将MethodName2作为参数,传递给MethodName

public class Class1
{
public void MethodName(??)
{

}
public void MethodName2()
{

}

}

[解决办法]
请使用委托!

// 定义委托,原型与欲包装方法原型一样
public delegate void Method2Callback(string message);

public class Class1
{
public void Method1(string message, Method2Callback cb)
{
cb(message);
}

public void Method2(string message)
{
Console.WriteLine(message);
}

}

// 调用
Class1 c = new Class1();
Method2Callback cb = new Method2Callback(c.Method2);
c.Method1( "Hello ", cb);



[解决办法]
虽然可以通过反射得到方法的名字,不过还是不大清楚楼主要做什么
[解决办法]
用反射得到方法名,太费时了...
[解决办法]
你什么用途亚,这个要求真怪

读书人网 >C#

热点推荐