防止多次进入按钮事件

时间:2014-09-17 09:51:25

标签: c# asp.net

我使用简单的asp:Button将文本框内容仅保存到DB

protected void btnSave_Click(object sender, EventArgs e)
{
  If(txtMessage.text != string.Empty)
  {
    // Insert into DB Method
    txtMessage.Text = string.Empty;
  }
}

问题是当我双击按钮时,文本框不会被清除,调试器进入条件,因此保存内容两次

任何帮助?

1 个答案:

答案 0 :(得分:1)

保存最后一个按钮点击时间并在处理点击时进行比较

类似的东西:

    TimeSpan LastClick = DateTime.Now.TimeOfDay;
    private void button1_Click(object sender, EventArgs e)
    {
        lock (this)
        {
            if (DateTime.Now.TimeOfDay.Subtract(LastClick).TotalMilliseconds < 500)
                return;
        }
        LastClick = DateTime.Now.TimeOfDay;
        if(txtMessage.text != string.Empty)
        {
          // Insert into DB Method
              txtMessage.Text = string.Empty;
        }
    }