不使用 -= 如何解除 button 的所有 Click 事件处理?

解决方案 »

  1.   

    如果是在设计期删除事件处理的话,提供一种比较方便的办法
    1 把事件处理函数删除
    2 编译,报错,双击出错信息,跳转到出错的代码行,应该在form.design.cs文件中
    3 删除包含 += 那一句
    如果是运行期取消事件订阅,那么用 -= 是标准的方式
      

  2.   

    要在运行时动态解除button的所有 Click 事件处理
      

  3.   

    例如:
            #region btn_test 单击事件处理        private void eventHandlerA(object sender, EventArgs e)
            {
                MessageBox.Show("eventHandlerA fired.");
            }        private void eventHandlerB(object sender, EventArgs e)
            {
                MessageBox.Show("eventHandlerB fired.");
            }        #endregion//...            btnTest.Click += new EventHandler(this.eventHandlerA);
                btnTest.Click += new EventHandler(this.eventHandlerB);
    不使用-=可不可删除 btnTest 的所有Click 事件处理?
      

  4.   

    重写Button类,覆盖鸟OnClick..随便你怎么处理...