【问题标题】:How to disect if a textbox was Clicked or Tapped Windows 8如何剖析文本框是否被单击或点击 Windows 8
【发布时间】:2013-09-16 17:14:49
【问题描述】:

我遇到了以下问题。我的 Monogame with XAML 项目中有一个文本框(它使用与普通 XAML 项目完全相同的引用),如果需要捕获单击文本框的内容是否是从鼠标或触摸触发的。我尝试了不同的东西

txtTest.AddHandler(PointerPressedEvent, new Windows.UI.Xaml.Input.PointerEventHandler(txtTest_PointerPressed), true);
txtTest.AddHandler(TappedEvent, new Windows.UI.Xaml.Input.TappedEventHandler(txtTest_Tapped), true);

我为事件添加了处理程序,但问题是这两个事件都是由鼠标或触摸触发的,我需要将它们分开,因为我需要以不同的方式处理它们。

我通过 MSDN documentation 进行了搜索,但找不到其他适合我的问题的内容

已经感谢您的努力。

【问题讨论】:

  • 鉴于您可以访问 txtTest,它不是已经暴露了该事件吗?试试 txtTest.GotFocus 或者 txtTest.Tapped,从那里你可以看到事件的来源是什么

标签: c# xaml windows-8 monogame


【解决方案1】:

TappedEventHandler 将公开一个TappedRoutedEventArgs

这个类包括一个PointerDeviceType 属性,它将指定点击是通过触摸、鼠标还是笔发生的。

【讨论】:

  • 真正的英雄!感谢您的快速响应。在任何地方都找不到它,所以我发布了希望有人能在某天回答它,3 分钟后给出了答案:D
  • 跟进这个答案。我使用了返回 Pointer.PointerDeviceType 的 PointerEventHandler,因为指针事件在元素获得焦点之前触发 TappedEventHandler 在元素获得焦点之后触发,这对我来说太晚了。
猜你喜欢
  • 2011-03-20
  • 1970-01-01
  • 1970-01-01
  • 2014-05-19
  • 2016-12-15
  • 2022-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多