win10 支持默認把觸摸提升鼠標事件 打開 Pointer 消息
在 WPF 經常需要重寫一套觸摸事件,沒有UWP的Pointer那麽好用。 如果一直都覺得 WPF 的觸摸做的不好,或想解決 WPF 的觸摸問題,但是沒有方法,那麽請看下面。
只要新建框架為 .net 4.7 以上,運行的系統是Windows 10 Creators Update
就可以。
打開新建的工程,設置框架。
然後打開 App.config,添加支持把觸摸和筆到鼠標
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true"/>
</runtime>
需要知道,這個特性不支持實時的筆跡。
因為筆跡需要運行在UI線程,會導致比較差的性能。
開啟了這個屬性就可以使用 Pointer 消息。
因為有小夥伴說使用了我上面代碼無法打開 Pointer 消息,我看了他代碼,發現他寫錯了,所以我把全部 App.config 代碼寫出來。
<?xml version="1.0" encoding="utf-8"?>
< configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7" />
</startup>
<runtime>
<AppContextSwitchOverrides value="Switch.System.Windows.Input.Stylus.EnablePointerSupport=true" />
</runtime>
</configuration>
參見:https://msdn.microsoft.com/en-us/library/mt800336(v=vs.110).aspx
本文會經常更新,請閱讀原文: https://lindexi.gitee.io/lindexi/post/win10-%E6%94%AF%E6%8C%81%E9%BB%98%E8%AE%A4%E6%8A%8A%E8%A7%A6%E6%91%B8%E6%8F%90%E5%8D%87%E9%BC%A0%E6%A0%87%E4%BA%8B%E4%BB%B6-%E6%89%93%E5%BC%80-Pointer-%E6%B6%88%E6%81%AF.html ,以避免陳舊錯誤知識的誤導,同時有更好的閱讀體驗。
本作品采用 知識共享署名-非商業性使用-相同方式共享 4.0 國際許可協議 進行許可。歡迎轉載、使用、重新發布,但務必保留文章署名林德熙(包含鏈接: https://lindexi.gitee.io ),不得用於商業目的,基於本文修改後的作品務必以相同的許可發布。如有任何疑問,請 與我聯系 。
win10 支持默認把觸摸提升鼠標事件 打開 Pointer 消息