如何让同一个按钮响应不同的单击事件?

解决方案 »

  1.   

    string s;
    if(s=="1")
    {
    this.Button1.Click += new System.EventHandler(this.Button1_Click);}
    else
    {
    this.Button1.Click += new System.EventHandler(this.Button2_Click);
    } private void Button1_Click(object sender, System.EventArgs e)
     {  
    }private void Button2_Click(object sender, System.EventArgs e)
     {  
    }
      

  2.   

    不同情况 是如何区分的? 
    知道了不同情况, 调用不同函数不就完了么.void buttonclick(object sender, EventArgs e)
    {
      switch (status){
        case 1:
          call 情况1;
          break;
        //.....
      }
    }
      

  3.   

    多种方法:
    最土的一种:在单击事件中根据情况来判断
    优雅的一种:不同的情况挂接不同的事件,先要把之前的事件清空;
    最优雅的一种:继承button,重写OnClick方法,并维护外部注册事件的委托,这个是有难度的;
      

  4.   

    0.0
    if(textbox1.text=="开始")
    {
    timer1.tick==true;
    textbox1.text="停止";
    }
    if(textbox1.text=="停止")
    {
    timer1.tick==false;
    textbox1.text="开始";
    }
    貌似是可以这样的,,,
      

  5.   

    Button btn=sender as Button;
    btn.performClick();
    条件
    doSomething();
    else
    doSomething();