平板电脑WPF Windows桌面应用程序-滚动问题

8
我正在ASUS ME400型号的平板电脑上运行我的桌面应用程序WPF,使用滚动视图器时,手指拖动(启用水平模式)到滚动结束时,窗口会移动并出现任务栏。如果我用鼠标滚动,则不会看到这种效果,只有在使用滚动条时才能看到。
如何避免窗口移动?当我滚动滚动条到底部时,如何锁定我的窗口并禁止其移动?
(Note to reviewer: HTML tags preserved)
1个回答

11

在启用了滚动的 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之前停止其在可视树中的冒泡过程。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接