|
业务需要,单击控件触发个业务,双击时触发另一个业务,由于双击时触发了单击的事件,所以我想在mouseup中根据两次点击的时间间隔来区分单击还是双击,奇怪的是,我双击时记录的点击次数是1,导致双击两个业务都触发了,这是为什么 |
|
| 40分 |
int click = 1;
private void timer_singleclick_Tick(object sender, EventArgs e)
{
click = click + 1;
if (click == 5)
{
Operate_Click();
timer_singleclick.Enabled = false;
click = 1;
}
}
private void Operate_DoubleClick()
{
MessageBox.Show("双击");
//这里为双击的操作代码
}
private void Operate_Click()
{
MessageBox.Show("单击");
//这里为单击的操作代码
}
private void textBox2_MouseDoubleClick(object sender, MouseEventArgs e)//双击弹出
{
timer_singleclick.Enabled = false;
Operate_DoubleClick();
}
private void textBox2_MouseClick(object sender, MouseEventArgs e)//单击弹出
{
if (e.Button == MouseButtons.Left) timer_singleclick.Enabled = true;
}
|
|
你的timer_singleclick_Tick是自定义事件吗
|
|
|
无语!
WPF里鼠标点击事件参数e里面本来就有个属性e.ClickCount,你根据它就可以判断是单击还是双击了 |
|
|
你加一句 if (e.ClickCount == 2)
{ } 设置个断点,双击之后就知道根本就不进去 |
|
|
timer控件的事件 |
|