2013-04-17 67 views
6

我在ScrollViewer中有多個視頻,當我點擊其中的一個視頻時,它播放和我有全屏的電影,我用滾動條移動的位置它隨視頻移動。這沒關係。我通過添加鼠標點擊媒體元素來實現這一點,現在我正在觸摸屏上測試它,它正在工作。WPF - 觸摸手勢 - 滾動時禁止鼠標點擊

但我想區分點擊視頻和移動在該地區。該用戶不想「選擇」視頻,但他只是在區域內移動,而不是在滾動條中移動,而是在視頻區域移動。爲了更好的理解,我添加了圖像:Example

要讓WPF區別點擊和移動(同時擁有但仍然只調用一個)。做這個的最好方式是什麼?謝謝

+0

關閉我的頭頂,做了以下工作?檢測TouchDown事件,例如設置'_touchDown = true',在Click事件中,如果'_touchDown'爲true,則不要執行視頻選擇,在您的TouchUp事件集合中_touchDown = false'。 –

回答

2

自己處理觸摸事件非常困難,尤其是當您必須處理嵌套控件時。

我認爲解決這個最簡單的方法,就是讓你使用Microsoft Surface Touch Pack

與SurfaceScrollView替換您滾動型,並把上面的MediaElements透明SurfaceButton並在點擊事件作出反應(或通過處理它一個命令)。

這樣,微軟爲您做了棘手的平移(滾動)或點擊(點擊)。作爲一個不錯的副作用,您可以免費獲得ScrollViewer的彈跳和互動。