加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – Canvas单击Silverlight中的事件,而不是UIElement

发布时间:2020-12-16 01:30:56 所属栏目:百科 来源:网络整理
导读:我有一个画布对象,我在它上面洒了很棒的控件.我正在使用ScaleTransform对象来缩放画布,以便我可以放大/缩小. 我已经连接了控件,以便我可以拖动它们,并且通过使用MouseLeftButtonDown,MouseLeftButtonUp和MouseMove,拖放效果很好.现在,我想在仅单击Canvas时启
我有一个画布对象,我在它上面洒了很棒的控件.我正在使用ScaleTransform对象来缩放画布,以便我可以放大/缩小.

我已经连接了控件,以便我可以拖动它们,并且通过使用MouseLeftButtonDown,MouseLeftButtonUp和MouseMove,拖放效果很好.现在,我想在仅单击Canvas时启用事件.当我为canvas对象读取docs时,我看到MouseLeftButtonDown事件仅在它超过UIElement时触发.

Occurs when the left mouse button is
pressed (or when the tip of the stylus
touches the tablet PC) while the mouse
pointer is over a UIElement.
(Inherited from UIElement.)

不幸的是,我想要相反的行为.我想知道什么时候鼠标在没有任何控件的情况下点击画布上的鼠标.由于我是Silverlight的新手,我可能会以错误的方式做到这一点.有什么我忽略了吗?我是以错误的方式来做这件事的吗?我正在寻求一些帮助,也许还有很多方向.

解决方法

我不是Silverlight大师,但是你可以在Canvas中添加一个透明的UIElement,在所有其他UIElements之下,并使用它来确定用户是否在任何其他拖放元素之外点击了.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读