C#学习教程:在Windows 10(1803)上,如果WPF透明窗口覆盖它们,则所有应用程序都会丢失触摸或手写笔分享


在Windows 10(1803)上,如果WPF透明窗口覆盖它们,则所有应用程序都会丢失触摸或手写笔

如果我使用一个简单的空窗口创建一个新的WPF应用程序,如下面所示的代码,我发现WPF应用程序覆盖的所有应用程序都失去了触摸或手写笔反应。 只有在Windows 10升级到1803(10.0.17134.0)时才能重现此问题。

 

我写了另一个WPF应用程序来找出发生了什么。 所以我将一个StylusDown事件添加到Window,如下所示的代码:

 // This code is in another WPF application. private void OnStylusDown(object sender, StylusDownEventArgs e) { // Set a breakpoint here. } 

但是在我关闭顶部的透明WPF窗口之前,断点从未到达。

我将非常简单的代码推送到GitHub: dotnet-campus / TouchIssueOnWindows10.0.17134 。 克隆它可能会有所帮助。

为什么会发生这种情况以及如何解决? 任何回复表示赞赏。

更新

Microsoft已在.NET Framework 2018年8月质量汇总预览中解决了此问题。

解决了在具有透明覆盖窗口的Windows Presentation Foundation(WPF)应用程序中以不同方式处理触摸和鼠标事件的问题。


原版的

经过一个星期的调试,我终于找到了解决方案。

只需为Window添加ResizeMode="NoResize"属性,如下所示:

    

@lindexi已将此问题及此解决方案发布到他的post中。 如果您想了解有关此问题的更多信息,请阅读win10 17025 touch bug – lindexi了解更多详情。 (这篇文章是用多种语言编写的,所以即使忽略了未知的字符,你也不会错过任何内容。)

实际上,我仍然无法弄清楚为什么这个属性会有所帮助。

谁能解释这个问题的原因?

上述就是C#学习教程:在Windows 10(1803)上,如果WPF透明窗口覆盖它们,则所有应用程序都会丢失触摸或手写笔分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—猴子技术宅(www.ssfiction.com)

本文来自网络收集,不代表猴子技术宅立场,如涉及侵权请点击右边联系管理员删除。

如若转载,请注明出处:https://www.ssfiction.com/ckf/1031968.html

发表评论

邮箱地址不会被公开。 必填项已用*标注