我正在使用Windows 8.1上的Windows运行时制作应用程序。我有一个画布,允许用户在其上拖动不同的对象,以及调整这些对象的大小。它的工作方式与Visual Studio和Blend的UI设计器非常相似,您可以在其中单击一个对象,并可以移动对象并调整其大小。
我的问题是:是否有控件继续报告PointerMoved事件,即使指针在技术上已离开实际控件,只要鼠标按钮仍然按下?
我现在的问题是,例如,如果您尝试使用我提供的调整大小手柄来调整对象的大小,并且您移动鼠标的速度太快,它将保留调整大小手柄的边界,即使鼠标按钮也是如此仍然被按下,指针移动事件将停止触发,调整大小将无法完全完成。
是否有指针移动事件继续触发,直到用户释放鼠标按钮?
答案 0 :(得分:1)
当指针离开原始UIElement的命中测试区域时,没有直接的方法继续触发PointerMoved事件,这不是保持按压的问题,而是离开射击区域的问题的UIElement。
考虑为Element的Container实现PointerMoved EventHandler方法,并在指针使用PointerExited离开该Element的区域时订阅它 事件,以便您可以继续提供有关指针移动的数据。
还有一件事,你最好考虑使用ManipulationEvents,那些会给你更简单和更好的解决方案,尝试按照这些guidelines更好地与Touch输入交互。