先声明一下,在Button的点击事件中进行一下判断,不执行后续的代码当然是可以的,
但从界面的效果看,用户的点击使按钮的样子发生了些变化,对用户的体验来说,应该不够好。我的意思就是,在Button在enable状态下,当用户点击时,Button的外观样子没有任何变化,就像没反应一样。这个要求的背景就是,当用户第一次点击按钮时,系统启用了一个线程,这个线程会花费一些时间,如果用户
在此期间,再点击按钮的话,就会出错,如果将Button disabled,界面就显得不太好看,所以有这么一个要求,
请大家出出主意,帮帮忙。

解决方案 »

  1.   

    继承一下button,然后重写onclick()事件触发器,这样不知道可不可以;
      

  2.   

    试一试
    control.Attributes.Add("onclick", "return false;");
      

  3.   

    第一次点击记录一个标识,等待后台处理完成后,清楚标识。click事件处理程序中,判断没有该标识则执行后台处理,如果有,则不处理。就能满足你的需要。
      

  4.   

    将button的enable = false
    然后修改button enable = false时的颜色为 enable = true时的颜色或者其他你认为好看的颜色
    OK搞定。接分
    写程序去让enable = true时不接受响应,那是找麻烦事
      

  5.   

    不改变enable
    bool executing;
    button1_Click(object sender,EventArgs e)
    {
          if(executing){return;}
          executing=true;
          ...
          线程启动 
    }
    void 线程方法()
    {
       ...
       executing=false;