WPF - 触摸手势 - 滚动时禁止鼠标单击

时间:2013-04-17 08:09:24

标签: c# wpf touch gesture

我在ScrollViewer中有多个视频,当我点击其中一个视频时播放,我在全屏播放电影,我用滚动条移动了它随着视频移动。这没关系。我已经通过添加鼠标点击媒体元素来实现这一点,现在我在触摸屏上测试它并且它正在工作。

但我想区分点击视频和移动该区域。该用户不想“选择”视频,但他只是移动区域而不是滚动条但是在视频区域。为了更好地理解,我添加了图片:Example

让WPF在点击和移动之间产生差异(两者都有,但仍然只调用一个)。做这个的最好方式是什么?感谢

1 个答案:

答案 0 :(得分:2)

自己处理触摸事件非常困难,尤其是当您必须处理嵌套控件时。

我认为最简单的解决方法是使用Microsoft Surface Touch Pack

用SurfaceScrollView替换ScrollView,并在MediaElements上方放置一个透明的SurfaceButton,并对Click-event做出反应(或通过a命令处理它)。

通过这种方式,Microsoft可以为您进行棘手的平移(滚动)或点击(点击)。而且作为一个很好的副作用,你可以免费获得ScrollViewer的弹跳和内部等功能。