我的应用程序在各个地方使用UiElement.TouchDown
事件,其中一个是让用户停止旋转轮。在这种情况下,人们可以很容易地发现实际触摸屏幕和TouchDown事件之间的短暂延迟约为1/3。
我已将Stylus.IsPressAndHoldEnabled
设为false。
为了解决这个问题,我编写了一个报告WPF事件和本机窗口消息的测试工具,我注意到一旦触摸屏幕,就会生成id为0x02CC,0x011B和0x011A的消息, TouchDown事件前100到300毫秒。这让我相信司机会快速报告触摸,延迟会在WPF翻译的后期引入。
有没有办法让触控互动更具响应性?请询问您需要的任何信息!
答案 0 :(得分:1)
除非需要轻弹,否则在XAML中设置或手动设置后面的代码:(我假设您的意思是说IsPressAndHoldEnabled不是IsTouchAndHoldEnabled)
Stylus.IsPressAndHoldEnabled="False" Stylus.IsFlicksEnabled="False"
此外,请考虑处理TouchDown事件并将其捕获到相关的UIElement(不要忘记在TouchUp中发布它)。
uielement.CaptureTouch(e.TouchDevice);
e.Handled = true;