添加WPF触摸应用程序列表框的惯性

本文关键字:列表 WPF 触摸 应用程序 添加 | 更新日期: 2023-09-27 18:13:57

我有一个为触摸显示器构建的全屏WPF应用程序,并且我在主屏幕上有一些列表框。

当我轻弹Listbox时,它滚动得很好,但当它到达列表的末尾时,整个应用程序从屏幕顶部被拉下来,但我需要的惯性只是列表框,而不是整个窗口。我怎样才能做到呢?

添加WPF触摸应用程序列表框的惯性

ManipulationBoundaryFeedback事件使应用程序或组件,以便在对象碰到边界时提供视觉反馈。例如,Window类处理ManipulationBoundaryFeedback事件,以导致窗口在其边缘为时轻微移动遇到。

因此,一种解决方法是处理ListBox上的ManipulationBoundaryFeedback,并将Handled设置为true:

<ListBox ManipulationBoundaryFeedback="OnManipulationBoundaryFeedback">            
  // ...
</ListBox>

后台代码:

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