2018-9-1-win10-17025-触摸bug
title | author | date | CreateTime | categories |
---|---|---|---|---|
win10 17025 触摸bug
|
lindexi
|
2018-09-01 09:50:18 +0800
|
2018-2-13 17:23:3 +0800
|
WPF UWP 触摸
|
This article is written in both English and Chinese.
本文使用中文和英文两个版本。
在 win10 的 17025(直到 17134 也就是正式版 1803 也没有修复) 可以容易让 UWP 触摸失效。做法是创建一个窗口背景是透明的 wpf 程序,把他置顶,这时所有 uwp 程序就无法触摸。在正式版 17134 是所有的触摸程序都触摸失效,除了可以把触摸转鼠标的程序如 VisualStudio 和 QQ 还能使用,如 Edge 和 Chrome 都无法使用。
I found the easy way to make the UWP app touch not work in win10 17025(until 17134). To create a wpf app with transparent background and make it Topmost, you can see all of the UWP app's touch not work.
中文
写英文的原因是给微软报这个问题,现在发在 微软反馈 希望大家投票。
步骤:
创建一个 wpf 程序
设置 wpf 的窗口最大化
设置 wpf 程序的背景为透明
启动 wpf 程序
这时就可以看到 Edge 等软件都无法触摸
在检查的时候可以使用ManipulationDemo,可以看到在触摸的时候没有 Pointer 消息。
下面是关闭 wpf 程序之后,可以看到最下面有 Pointer 消息
下面是这个wpf软件代码:
public MainWindow()
{
InitializeComponent(); AllowsTransparency = true;
WindowStyle = WindowStyle.None;
WindowState = WindowState.Maximized;
Background = Brushes.Transparent;
Topmost = true;
}
解决方案
最新的微软补丁August 30, 2018—KB4346783 修复了这个问题,只需要在用户的设备安装这个补丁就可以解决
下面是不使用补丁的方法
如果设置了一个窗口满足下面的属性
WindowStyle = WindowStyle.None;
WindowState = WindowState.Maximized;
或
WindowStyle="None"
AllowsTransparency="True"
那么就必须要设置 ResizeMode="NoResize"
不然就会出现下面的问题
在 win10 17025-17134 版本,如果同时设置
AllowsTransparency = true;
窗口下面所有程序触摸失效还原窗口再最大化,窗口出现偏移
切换屏幕,窗口出现偏移
English
Step:
Create a wpf app
Set the wpf app's windows state is Maximized
Set the wpf app's windows background is transparent
Run the wpf app
Then you can see all of the uwp app's such as edge and setting touch not work.
You can use ManipulationDemo to help you see the Pointer message that cant get when touch. I use ManipulationDemo to find the pointer message have not be received. The app can only receive the mouse message.
I took an image that shows the pointer message when I closed the wpf app.
This is the wpf app's code:
public MainWindow()
{
InitializeComponent(); AllowsTransparency = true;
WindowStyle = WindowStyle.None;
WindowState = WindowState.Maximized;
Background = Brushes.Transparent;
Topmost = true;
}
This is my system and I think in win10 17025 the windows cant make the app uses pointer message to work that exists another transparent background app in above.
Solution
Microsoft has fixed this issue in .NET Framework August 2018 Preview of Quality Rollup.
Addresses an issue where touch and mouse events were handled differently in Windows Presentation Foundation (WPF) applications that have a transparent overlay window.
If you have a Window that set the following properties.
WindowStyle = WindowStyle.None;
WindowState = WindowState.Maximized;
Or
WindowStyle="None"
AllowsTransparency="True"
You must set ResizeMode="NoResize"
to avoid some problems as
All applications lost touch or stylus if a WPF transparent window covers on them.
Windows appears offset when set it to
Maximized
fromNormal
.Windows appears offset when switch screen.
2018-9-1-win10-17025-触摸bug的更多相关文章
- win10 17025 触摸bug
This article is written in both English and Chinese. 本文使用中文和英文两个版本. 在 win10 的 17025 可以容易让 UWP 触摸失效.做 ...
- Win10系统菜单打不开问题的解决,难道是Win10的一个Bug ?
Win10左下角菜单打不开,好痛苦,点击右下角的时间也没反应,各种不爽,折磨了我好几天,重装又不忍心,实在费劲,一堆开发环境要安装,上网找了很多方法都不适用.今天偶然解决了,仔细想了下,难道是Win1 ...
- T470 Win10下触摸板手势
T470 Win10下触摸板手势 学习了:https://forum.51nb.com/thread-1742490-1-1.html 三指横向竟然是alt+tab 学习了:http://www.xi ...
- mac安装win10后触摸板没有右键功能键的添加技巧
一些mac用户也会在自己的笔记本电脑上安装windows10系统. 但最近有部分用户发现,安装上win10正式版后,发现无论点击触摸板哪个位置,都只有左键,根本无法右键的问题, 针对此问题,现笔者分享 ...
- WPF开发经验-实现Win10虚拟触摸键盘
一 引入 项目有个需求,需要实现纯触控操作进行键盘输入.项目部署在Win10系统上,考虑有两种方案来实现. 通过调用Win10自带的触摸键盘来实现: 通过WPF实现一个触摸键盘来实现: 二 调用Win ...
- WIN10系统触摸板快捷键
快捷的手势操作,有时候会让人脱离鼠标,只要不是非用不可的情况,基本上这些常用手势就能让我们摆脱鼠标携带不便或者桌子地方小的烦恼.iOS上的快捷手势很是受欢迎,win10上却鲜有人知晓,尤其是非开发人员 ...
- 移动端一个奇怪的触摸bug
这两天遇到一个很奇怪的bug,在移动端,一个页面里所有的input框都不能点击,我查了一下,里面的没有设置readonly属性,只要页面滚动一下就可以用了,而且,只要我在真机测试的时候,f12开发者模 ...
- win10笔记本触摸板手势大全
- dotnet 从入门到放弃的 500 篇文章合集
本文是记录我从入门到放弃写的博客 博客包括 C#.WPF.UWP.dotnet core .git 和 VisualStudio 和一些算法,所有博客使用 docx 保存 下载:dotnet 从入门到 ...
随机推荐
- 【JavaMail】JavaMail整合RabbitMq发送邮件案例
前言 Linux安装RabbitMQ:https://www.cnblogs.com/jxd283465/p/11975094.html SpringBoot整合RabbitMQ:https://ww ...
- 一本通【例题4】Addition Chains——题解
又是一道剪枝剪了半天的搜索题...题目传送 要充分利用题目中的约束条件:1.:2.对于每个k(1≤k≤m)k(1≤k≤m)满足ak=ai+aj(0≤i,j≤k−1)ak=ai+aj(0≤i,j≤k−1 ...
- Socket网络通信编程(二)
1.Netty初步 2.HelloWorld 3.Netty核心技术之(TCP拆包和粘包问题) 4.Netty核心技术之(编解码技术) 5.Netty的UDP实现 6.Netty的WebSocket实 ...
- ES的聚合操作
构建数据: @Test public void createIndex(){ /** * 创建索引 * */ client. ...
- windows 下的定时任务 (原)
linux 下的定时任务是crontab 以前都是linux的定时任务,这次在windows做了定时任务,简单记录一下(win8 跟 win10为例) windows 2008下的定时任务配置: 控制 ...
- SQLSTATE[HY000] [2002] No such file or directory
正常的解决办法.. 只需将laravel配置文件中的host 127.0.0.1改成localhost就可以: 'mysql' => array( 'driver' ...
- h5视频标签 video
video标签,用来播放视频的 基本上所有的浏览器都支持 video支持的视频格式有: mp4 mime-type: video/mp4 WebM mime-type: video/WebM Ogg ...
- Linux超全实用指令大全
参考 Linux超全实用指令大全
- Java实体类之间的映射(一对多关系)
通过栗子,一个人可以有多辆汽车 定义人 这个类 人可以有很多辆汽车,类中车属性用数组 class Person{ private String name; private String phone ...
- 插桩 inline hook 动态二进制插桩的原理和基本实现过程
插桩测试 https://source.android.google.cn/compatibility/tests/development/instrumentation https://zhuanl ...