我目前正在将应用程序从iPhone移植到Windows Phone。如何模拟Touch Up内部/外部
按钮的行为在两个平台之间是完全不同的。
特别是,在iPhone上,可以按下按钮并释放按钮区域外的按钮。 iOS有两个事件来处理这个问题:Touch Up Inside和Touch Up Outside
但是,在Windows Phone和Silverlight上,行为是不同的,不幸的是不是我想要的。
您已经点击按钮时调用的Click方法,可以是实际点击或释放按钮; (通过ClickMode值控制的行为)
如果您按下按钮并释放它,而手指不在按钮上,则不会发生任何事件(尽管按钮的状态会按照已证明的方式发生变化通过它的外观变化)
最终,我想实现的是能够触发一个事件,当按钮被释放时,这个事件应该发生在任何情况下手指被释放,就像它在iPhone上一样。 例如: 按下按钮,移动手指的按钮外,松开手指 - >事件触发 当手指离开屏幕,而不是当它只是离开按钮(其可很容易地通过被检测到的问题是检测OsIsPressedChangeed)
任何想法whoulc不胜感激
谢谢,但这是Silverlight的Windows Phone上;没有鼠标事件.. – jyavenard
有鼠标事件。这是我猜测桌面Silverlight的一次不幸的过渡,但是如果您想要处理单点触摸操作,则可以使用鼠标事件。我认为它不适用于多点触控 - 在这种情况下,您需要使用Touch.FrameReported + =(s,e)=> {};您还可以查看操纵事件(ManipulationStarted/Completed)。 –