博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WPF实现双击事件MouseDoubleClick
阅读量:5282 次
发布时间:2019-06-14

本文共 1596 字,大约阅读时间需要 5 分钟。

本实例是基于Canvas增加双击事件

public class RevitCanvas : Canvas    {        public RevitCanvas()        {            _oncetime = long.MaxValue;            Focusable = true;            this.AddHandler(Canvas.PreviewMouseDownEvent, new MouseButtonEventHandler(OnMouseDown));           //这里是使用使用双击事件哦            this.AddHandler(RevitCanvas.MouseDoubleClick, new RoutedEventHandler(OnMouseDoubleClick));        }        public static RoutedEvent MouseDoubleClick = EventManager.RegisterRoutedEvent("MouseDoubleClick", RoutingStrategy.Bubble, typeof(MouseButtonEventHandler), typeof(RevitCanvas));        protected void OnMouseDown(object sender, MouseButtonEventArgs e)        {            base.OnMouseDown(e);            //双击,两次单机距离不超过4像素,时间再0.5秒以内视为双击            Point p = e.GetPosition(this);            long time = DateTime.Now.Ticks;            if (Math.Abs(p.X - _oncePoint.X) < 4 && Math.Abs(p.Y - _oncePoint.Y) < 4 && (time - _oncetime < 5000000))            {                this.RaiseEvent(new RoutedEventArgs(RevitCanvas.MouseDoubleClick));//此处促发双击事件            }            _oncetime = time;            _oncePoint = p;        }        private void OnMouseDoubleClick(object sender, RoutedEventArgs e)        {           //我是双击事件哦        }        private Point _startPoint;        private long _oncetime;        private Point _oncePoint;    }

双击事件使用:

this.AddHandler(RevitCanvas.MouseDoubleClick, new RoutedEventHandler(OnMouseDoubleClick));        private void OnMouseDoubleClick(object sender, RoutedEventArgs e)        {           //我是双击事件哦        }

 

转载于:https://www.cnblogs.com/mqxs/p/9645015.html

你可能感兴趣的文章
Python并发编程04/多线程
查看>>
CF461B Appleman and Tree
查看>>
CF1215E Marbles
查看>>
BZOJ2339 HNOI2011卡农(动态规划+组合数学)
查看>>
octave基本操作
查看>>
axure学习点
查看>>
WPF文本框只允许输入数字[转]
查看>>
dom4j 通用解析器,解析成List<Map<String,Object>>
查看>>
第一个项目--用bootstrap实现美工设计的首页
查看>>
使用XML传递数据
查看>>
TYVJ.1864.[Poetize I]守卫者的挑战(概率DP)
查看>>
0925 韩顺平java视频
查看>>
iOS-程序启动原理和UIApplication
查看>>
mysql 8.0 zip包安装
查看>>
awk 统计
查看>>
模板设计模式的应用
查看>>
实训第五天
查看>>
平台维护流程
查看>>
2012暑期川西旅游之总结
查看>>
12010 解密QQ号(队列)
查看>>