this.Click += new EventHandler(Form1_Click); this.Click -= new EventHandler(Form1_Click);
this.tabTool.SelectedIndexChanged -= new System.EventHandler(this.tabTool_SelectedIndexChanged);
控件.事件 -= new EventHandler(委托方法);
利用反射修改它的委托"链表"看下面的例子 先给Button5加几个 this.button5.Click += new EventHandler(button5_Click); this.button5.Click += new EventHandler(button5_Click); this.button5.Click += new EventHandler(button5_Click); this.button5.Click += new EventHandler(button5_Click); this.button5.Click += new EventHandler(button5_Click);删除几个PropertyInfo pi = (typeof(System.Windows.Forms.Button)).GetProperty("Events", BindingFlags.Instance | BindingFlags.NonPublic); EventHandlerList ehl = (EventHandlerList)pi.GetValue(button5, null); FieldInfo fi = (typeof(Control)).GetField("EventClick", BindingFlags.Static | BindingFlags.NonPublic); Delegate d = ehl[fi.GetValue(null)]; if (d != null) { System.Delegate[] dels = d.GetInvocationList(); for (int i = 0; i < dels.Length; i++) { if (i < 3) { this.button5.Click -= (EventHandler)dels[i]; } } }
this.Click += new EventHandler(Form1_Click);
this.Click -= new EventHandler(Form1_Click);
先给Button5加几个
this.button5.Click += new EventHandler(button5_Click);
this.button5.Click += new EventHandler(button5_Click);
this.button5.Click += new EventHandler(button5_Click);
this.button5.Click += new EventHandler(button5_Click);
this.button5.Click += new EventHandler(button5_Click);删除几个PropertyInfo pi = (typeof(System.Windows.Forms.Button)).GetProperty("Events",
BindingFlags.Instance | BindingFlags.NonPublic);
EventHandlerList ehl = (EventHandlerList)pi.GetValue(button5, null);
FieldInfo fi = (typeof(Control)).GetField("EventClick", BindingFlags.Static | BindingFlags.NonPublic);
Delegate d = ehl[fi.GetValue(null)];
if (d != null)
{
System.Delegate[] dels = d.GetInvocationList();
for (int i = 0; i < dels.Length; i++)
{
if (i < 3)
{
this.button5.Click -= (EventHandler)dels[i];
}
}
}