none
wp8.1中注册的Holding事件,长按时为啥会执行两次? RRS feed

  • 问题

  • 现遇到一个奇怪的问题,我对一个控制注册了Holding事件,当我长按这个控件时,断点竟然进入了两次,这是为什么?
    2015年3月25日 8:47

答案

  • Holding 事件通常成对发生。根据在一段时间内未移动首次将操作解释为 Hold 操作时,将触发 Holding,触发时使用 HoldingState 值(属于 Started(在 HoldingRoutedEventArgs 事件数据中))。当 Hold 操作结束时,将触发 Holding 事件,此时将具有 HoldingState(属于 CompletedCanceled)。

    可以尝试这样:

    if (e.HoldingState == Windows.UI.Input.HoldingState.Started)

    Sample

    另外,你可以看看官网关于Holding事件的描述,希望对你有帮助。


    • 已编辑 lxd_DD 2015年3月25日 9:20 补充说明
    • 已标记为答案 jingjing.tang 2015年3月26日 1:10
    2015年3月25日 9:15

全部回复