知道方法名称,怎么得到方法
假设我定义了一个方法 
 Class   A 
 { 
       private   void   method1(Object   sender,   EventArgs   e) 
          { 
             ............; 
          } 
 }   
 这时我知道了此方法的名称为   mehtod1,这时我生成一个按钮button1,并把按钮的Click与这个方法绑定。当然写法应该是 
 button1.click+=new   EventHandler(method1); 
 有没有办法绕开一下,也即,写一个函数可以通过方法名称得到方法本身,如getMethod( "方法名称 ")??
------解决方案--------------------用反射?? 
------解决方案--------------------只有反射了
------解决方案--------------------参见 
 http://blog.csdn.net/tjvictor/archive/2007/01/24/1492079.aspx
------解决方案--------------------//比我想象的简单一些,参考如下代码:   
 EventInfo vEventInfo = typeof(Button).GetEvent( "Click "); 
 vEventInfo.AddEventHandler(button1,  
     Delegate.CreateDelegate(vEventInfo.EventHandlerType, this,  "method1 ")); 
------解决方案--------------------学习,经验证正确,顶ls的 
 namespace KnowFuncName 
 { 
     public partial class Form1 : Form 
     { 
         private System.Windows.Forms.Button button1; 
         public Form1() 
         { 
             InitializeComponent(); 
             this.button1 = new System.Windows.Forms.Button(); 
             this.Controls.Add(this.button1); 
             EventInfo vEventInfo = typeof(Button).GetEvent( "Click "); 
             vEventInfo.AddEventHandler(button1, 
                 Delegate.CreateDelegate(vEventInfo.EventHandlerType, this,  "method1 ")); 
         } 
         private void method1(object sender, EventArgs e) 
         { 
             MessageBox.Show( "sdfsdf "); 
         } 
     } 
 }
------解决方案--------------------反射,用Invoke方法取
------解决方案--------------------可以用反射,不过为什么要这样做呢?我猜你是要运行时绑定事件吧,但事实上大多数需要运行时绑定事件的情形,都有别的方法解决。
------解决方案--------------------Up
------解决方案--------------------只能用反射了。不过不太明白楼主为什么要这样做。   
 非常同意楼上的观点。   
 基本上很多运行时绑定的事件,都可以改成其它形式。   
 有很多时候一个很难的问题,换一个思路就变成很简单的问题了。楼主你可以换个思路想想。   
------解决方案--------------------如果是实例方法,事件应该绑定到哪个实例的方法上呢?如果要绑定到所有的实例上,你又怎么遍历所有的实例,并知道有新的实例被创建?
------解决方案--------------------up   
------解决方案--------------------方法 与 事件 的 关联? 
 给你个 列子  (楼主应该 好好看看 委托的 概念) 
 建立一个 控制台程序看看 下面的:)     
 using System;   
 namespace ConsoleApplication1 
 { 
 	public delegate void MyDelegate(); 
 	public interface I 
 	{ 
 		event MyDelegate MyEvent; 
 		void FireAway(); 
 	} 
 	public class MyClass:I 
 	{ 
 		public event MyDelegate MyEvent; 
 		public void FireAway() 
 		{ 
             if(MyEvent!=null) 
 				MyEvent(); 
 			else 
 				Console.WriteLine( "MyEvent failed!   "); 
 		} 
 	} 
 	public class MainClass 
 	{ 
 		static private void f() 
 		{ 
 			Console.WriteLine( "F is called ..................... "); 
 			return; 
 		}  
 		static private void fl()