2013-04-20 147 views
5

我在平板電腦ASUS ME400 Intel Atom Z2760上運行我的桌面應用程序WPF。所有工作都正常,但是當我使用scrollviewer時,用手指滾動運動(橫向平移模式爲horizo​​ntalOnly),在用手指滾動結束時,窗口移動,您會看到任務欄一會兒。如果我用手指滾動,則不會看到效果,直到在滾動條中創建滾動條爲止。平板電腦WPF Windows桌面應用程序 - 滾動問題

我怎樣才能避免這種窗口運動?我如何鎖定我的窗戶,並且在滾動條末尾滾動時不允許移動?

回答

6

ScrollViewer對象中,如果您啓用了平移功能,請註冊ManipulationBoundaryFeedback的新事件。

<ScrollViewer PanningMode="Both" ManipulationBoundaryFeedback="ScrollViewer_ManipulationBoundaryFeedback"> 
    <!-- your content is here... --> 
</ScrollViewer> 

在代碼隱藏,你必須處理的情況下,通過設置Handled屬性true

void ScrollViewer_ManipulationBoundaryFeedback(object sender, ManipulationBoundaryFeedbackEventArgs e) 
{ 
    e.Handled = true; 
} 

(順便Handled屬性設置爲true,我們實際上是告訴該事件已經被我們處理了,所以我們在視覺樹中停止了消息的冒泡過程,然後它會到達Window/Application - 哪個會導致搖晃。)

相關問題