public class Tools
{
//双击事件定时器
private static DispatcherTimer _timer;
//是否单击过一次
private static bool _isFirst;
static Tools()
{
_timer = new DispatcherTimer();
_timer.Interval = new TimeSpan(0, 0, 0, 0, 400);
_timer.Tick += new EventHandler(_timer_Tick);
}
/// <summary>
/// 判断是否双击
/// </summary>
/// <returns></returns>
public static bool IsDoubleClick()
{
if (!_isFirst)
{
_isFirst = true;
_timer.Start();
return false;
}
else
{
return true;
}
}
//间隔时间
static void _timer_Tick(object sender, EventArgs e)
{
_isFirst = false;
_timer.Stop();
}
}
然后再单击事件中调用即可
private void Hyperlink_Click(object sender, RoutedEventArgs e)
{
if (Tools.IsDoubleClick())
{
Debug.WriteLine("double click");
}
else
{
Debug.WriteLine("click");
}
}
在使用有些控件的时候发现没有MouseDoubleClick事件,只能手动添加一个