今天开发遇到了一个需求 已经获取了当前的btn对象,须要经过btn对象调用它的点击事件 故百度了下解决方案 在此记录下,以便分享。spa
var btn=new Button; PropertyInfo pi=(typeof(Button)).GetProperty("Events",BindingFlags.Instance|BindingFlags.NonPublic); EventHandlerList ehl=(EventHandlerList)pi.GetValue(btn,null); FieldInfo fi=(typeof(Control)).GetField("EventClick",BindingFlags.Static|BindingFlags.NonPublic); Delegate d=ehl[fi.GetValue(null)];