clone Control event handlers at run time

var btn2 =newButton();  
btn2.Text= btn1.Text;
btn2.size = btn1.size;

To clone all events of any WinForms control:

var eventsField =typeof(Component).GetField("events",BindingFlags.NonPublic|BindingFlags.Instance);

var eventHandlerList = eventsField.GetValue(button1); eventsField.SetValue(button2, eventHandlerList);
 
posted on 2014-03-29 10:45  武胜-阿伟  阅读(158)  评论(0编辑  收藏  举报