0

我需要区分点击和双击,我已经将此解决方案与计时器msdn.doubleclick 一起使用

所以我有一个看起来像这样的计时器功能

private void doubleClickTimer_Tick(object sender, EventArgs e)
{
  milliseconds += 100;
  if (milliseconds >= SystemInformation.DoubleClickTime)
  {
    doubleClickTimer_.Stop();
    if (isDoubleClick)
      executeDoubleClick();
    else
      ExecuteSingleClick();
    isFirstClick = true;
    isDoubleClick = false;
   }
}

这工作正常,但在 ExecuteSingleClick 我需要 MouseEventArgs e,但我只有来自 doubleClickTimer 函数的 EventArgs e,有没有办法从 doubleClickTimer 获取 MouseEventArgs,所以我可以这样写:

ExecuteSingleClick(MouseEventArgs e)
{
   MouseButton button = e.button;
   ....
}
4

1 回答 1

1

在启动计时器之前,请将其 tag 属性设置为mouseeventargs参数 ( e)。然后,您可以在timer.tick事件回调中使用它(将其传递给您的执行(双击)单击函数)。

于 2011-08-03T08:11:30.917 回答