在 Windows 10 中触控笔未触发 InkCanvas 事件
Posted
技术标签:
【中文标题】在 Windows 10 中触控笔未触发 InkCanvas 事件【英文标题】:Stylus pen not firing events for InkCanvas in Windowss 10 【发布时间】:2018-07-05 06:45:17 【问题描述】:我有一台戴尔 Latitude 5285 和配对的戴尔主动式触控笔 (PN556W)。我正在开发一个 UWP 测试应用程序来尝试新事物,我碰巧注意到 Stylus 不会启动任何与 InkCanvas 相关的事件。
如果我用手指,就会触发事件。而且我仍然可以用手写笔在定义的区域上书写。据我所知,没有与 UWP 的 InkCanvas 相关联的其他类型的事件与绘图/描边/墨迹/等交互。
MainPage.xaml
<InkCanvas Name="MyCanvas" Weight="500" Height="500"
PointerPressed="MyCanvas_PointerPressed"
PointerMoved="MyCanvas_PointerMoved"
PointerReleased="MyCanvas_PointerReleased"
PointerEntered="MyCanvas_PointerEntered"
PointerExited="MyCanvas_PointerExited">
</InkCanvas>
MainPage.xaml.cs
InkPresenter myInkPresenter = MyCanvas.InkPresenter;
myInkPresenter.InputDeviceTypes = Windows.UI.Core.CoreInputDeviceTypes.Pen | Windows.UI.Core.CoreInputDeviceTypes.Touch | Windows.UI.Core.CoreInputDeviceTypes.Mouse;
//... Event methods not provided. Each one essentially adds some text to a textbox for reading output
有没有人在使用其他配对的测针/电脑时看到过这种行为和/或知道如何纠正它?
附带说明:我也尝试使用触控笔来处理使用以前的 Windows 8 Inking/Canvas 功能的应用程序,但除非我将触控笔关闭并在距离屏幕 3 厘米以内,否则笔无法书写.
【问题讨论】:
【参考方案1】:我发现跟踪笔画输入的实际事件位于InkPresenter
下,而不是InkCanvas
下。
例子:
MyCanvas.InkPresenter.StrokeInput.StrokeStarted += StrokeInput_StrokeStarted;
来源 UWP InkPresenter
【讨论】:
以上是关于在 Windows 10 中触控笔未触发 InkCanvas 事件的主要内容,如果未能解决你的问题,请参考以下文章