1

使用 Windows Touch WPF 中附带的 ScatterView 控件。我想防止在 scatterview 项目上发生惯性。但我仍然希望允许用户移动、缩放和旋转项目。

所以我试试这个...

   ScatterviewItem svi = new ScatterviewItem();
   svi.ManipulationDelta += OnManipulationDelta;

...

    void OnManipulationDelta(object sender, ManipulationDeltaEventArgs args)
    {
        if (args.IsInertial)
        {
            args.Complete();
            args.Handled = true;
        }
    }

但该事件永远不会触发。我做错了什么,还是有其他方法可以做到这一点,或者使用 scatterview 根本不可能防止惯性?

4

4 回答 4

0

事件处理程序用于操作 ScatterView 时。添加到 ScatterView 的每个项目都需要以相同的方式设置处理程序,您应该能够通过为 ScatterViewItem 类创建一个模板来做到这一点,或者如果您使用的是 ItemsControl,则可以通过那里的项目模板来实现。

于 2010-09-30T13:04:35.880 回答
0

0 的减速率也将起作用

于 2010-11-24T15:07:43.153 回答
0

不知道为什么您的事件没有触发。另一种解决方案是将 ScatterViewItem 的减速率设置为适当的高值。

于 2010-06-08T06:23:35.690 回答
0

尝试使用事件处理程序ContainerManipulationDelta而不是ManipulationDelta事件

于 2015-10-02T01:33:22.627 回答