wpf的canvas,frame怎么对内部的鼠标事件没有反应
1个回答
展开全部
没有真写过这样的实际使用的代码。你可以试试在图片上层覆盖一个Canvas,然后利用Canvas的MouseLeftButtonDown和MouseLeftButtonUp事件来解决绘图问题。基本思路无非是在MouseLeftButtonDown中记录下起点位置并将某个表示“正在绘制线条”的变量值置为true,然后再在MouseLeftButtonUp事件中记录并使用终点位置来添加一个线(直接加到Canvas.Children应该就可以了),并设置line.X1、line.X2、line.Y1、line.Y2为起点、终点坐标即可。最后再将“正在绘制线条”置为false就成。如果要绘制曲线,就比较麻烦,如果是规则曲线,可以用贝塞尔曲线,提供控制点(可以用装饰器实现)让用户拖动——开始直接提供没有弧度的直线即可;至于无规则的曲线,则可以考虑结合使用MouseLeftButtonDown/MouseMove/MouseLeftButtonUp三个事件来实现。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询