6

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

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

让 WPF 在单击和移动之间有所不同(同时拥有但仍然只调用一个)。做这个的最好方式是什么?谢谢

4

1 回答 1

2

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

我认为解决此问题的最简单方法是让您使用Microsoft Surface Touch Pack

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

这样,Microsoft 会为您完成棘手的平移(滚动)或点击(单击)。作为一个很好的副作用,您可以免费获得 ScrollViewer 的弹跳和 interia 之类的东西。

于 2013-04-28T22:09:37.113 回答