禁用 Windows 7 列表框上的触摸滑动

发布于 2024-12-04 04:40:04 字数 176 浏览 1 评论 0原文

ScrollViewer 上的触摸滑动支持在 windows7(也许是 vista)中原生工作。但在 XP 中则不然。

我想在windows XP中实现触摸滑动。为此,我想实现一个可在 XP 和 Vista 上运行的自定义滑动。

如何禁用 ScrollViewer 上的本机滑动支持并将其替换为自定义滑动?

Touch sliding support on ScrollViewer is working natively in windows7 (maybe vista). But not in XP.

I want to implement touch sliding in windows XP. To do that, I want to implement a custom sliding that will be working on XP and vista.

How I can disable native sliding support on the the ScrollViewer that I will want to replace to custom sliding?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

苏大泽ㄣ 2024-12-11 04:40:04

ScrollViewer 的 PanningMode 属性将作用于该控件的触摸事件的本机处理。

在这种特殊情况下,禁用列表框平移。

您必须创建一个 ListBox 样式并覆盖列表框的 ControlTemplate,以将 PanningMode="PanningMode.None" 属性添加到嵌套的 ScrollViewer 中。

<Style TargetType="{x:Type ListBox}">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type ListBox}">
...
        <ScrollViewer PanningMode="PanningMode.None"/>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>

The PanningMode property of the ScrollViewer will act on native handling of touch events for that control.

In that particular case, to disable listbox panning.

You will have to create a ListBox style and override the ControlTemplate of the listbox to add to the nested ScrollViewer the PanningMode="PanningMode.None" property.

<Style TargetType="{x:Type ListBox}">
  <Setter Property="Template">
    <Setter.Value>
      <ControlTemplate TargetType="{x:Type ListBox}">
...
        <ScrollViewer PanningMode="PanningMode.None"/>
      </ControlTemplate>
    </Setter.Value>
  </Setter>
</Style>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文