我在MainWindow中定义了一个ListBox控件,其IsManipulationEnabled属性设置为true。我有MainWindow中定义的操作事件(OnManipulationStarting,OnManipulationInertiaStarting和OnManipulationDelta)。这里的目标是在Listbox控件上实现翻译,更像是翻转功能。
然而,这些事件从未被提出过。我假设选择事件反过来吞噬这些事件。当我使用itemscontrol时,它工作正常。但是使用itemscontrol的问题是我没有选择状态。另一个选择是使用原始触摸,但操作更容易。
为什么操纵事件不会在列表框上触发?
提前致谢!
答案 0 :(得分:1)
ItemsControl 的默认模板不包含ScrollViewer,但ListBox包含ScrollViewer。当PanningMode不是None时, ScrollViewer 会处理这些事件。默认情况下,ScrollViewer将其几个属性(如PanningMode)绑定到其模板化父级的属性。尝试在ListBox上将附加的 ScrollViewer.PanningMode 属性设置为无。
<ListBox ScrollViewer.PanningMode="None" />