3

所以我只是对我的项目进行测试,并意识到如果你有一个链接(例如导航服务),它需要点击和双击。这意味着如果我有一个按钮可以转到应用程序中的另一个页面,除非我不处理双击,否则应用程序将崩溃。

所以如果我有这个:

<toolkit:HubTile Name="XXX"
      Message="XXXYYY" Source="ZZZ" 
      Title="XYZ" Tap="XYZ_Tap"/>

如果有人双击此图块,应用程序将崩溃。所以我必须添加

DoubleTap="XYZ_DoubleTap"

财产。但这既累人又似乎没有必要。那么有没有办法在全球范围内处理所有双击?然后,如果我想在某个地方实际实现它,只需覆盖它?谢谢 :)

编辑:DoubleTap 的“全局”事件处理程序很简单,什么也不做。这样我就不必为每个链接或按钮重写它。并且每次调用未处理的 DoubleTap 时都不会抛出异常。

4

2 回答 2

2

崩溃很可能发生,因为在第二次“点击”时引发了异常。类似于“当任务不在前台时不允许导航”的内容。

我想为 DoubleTap 放置一个空的事件处理程序会起作用,因为它可以识别双击事件并且什么都不做。另一种可能无论如何都应该这样做的方法是将导航调用包装在 try/catch 块中,以捕获第二次点击引发的异常。

但是为了解决您的具体问题,除了什么都不做之外,您还设想了什么样的全局处理双击?

于 2012-07-26T23:30:42.467 回答
1

您应该创建一个继承自该类的自定义控件,HubTile并将该DoubleTap事件设置为在该类中不执行任何操作。

于 2012-07-27T07:17:19.253 回答