当前位置 : 主页 > 编程语言 > c语言 >

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

来源:互联网 收集:自由互联 发布时间:2021-06-25
我有一个画布对象,我在它上面洒了很棒的控件.我正在使用ScaleTransform对象来缩放画布,以便我可以放大/缩小. 我已经连接了控件,以便我可以拖动它们,并且通过使用MouseLeftButtonDown,MouseL
我有一个画布对象,我在它上面洒了很棒的控件.我正在使用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之下,并使用它来确定用户是否在任何其他拖放元素之外点击了.
网友评论