C# WPF Windows 10 (1803) TouchKeyboard unreliable Issue (Prism ClickOnce)

你说的曾经没有我的故事 提交于 2019-12-03 17:18:30

Can you try updated variant of my library - https://github.com/AlexeiScherbakov/osklib

You can use OnScreenKeyboardWatcher/DispatcherOnScreenKeyboardWatcher/WinFormsKeyboardWatcher for: 1. Detection of current keyboard state 2. Watch how long keyboard is opened (for timeout)

I have tested this code on old versions(1709,1703 and 1607).On my 1803 (build 17134) it also works

We could NOT get the keyboard to work reliably with the solutions provided. The only (and easy) solution that worked for us was to Upgrade to .Net Framework 4.7.2 and upgrade all Nuget packages in our solutions with it. We could not use 4.7.2 a couple of months ago since ClickOnce did not have to right references built in, this was solved in a recent update.

After we upgraded to 4.7.2 we removed all keyboard related code from our app and now everything works as expected (in tablet mode, which is what we wanted), without any code from our end I might add! So the reason that I am not posting any code is simply because there isn t any!

As Tim Bijnens noted, when he started this thread, the keyboard toggle ( ITipInvocation.Toggle() ) does not always bring up the keyboard.

In Win10 Ver 1803, DesktopMode, there is no reliable way to
toggle the "Touch Keyboard" on|off [ ITipInvocation.Toggle() ];
nor can you reliably discover if it's "up" ( on screen )
[ IFrameworkInputPane.Location() ]; both routines fail randomly.

Instead, ensure that "TabTIP.EXE" and "....InputApp.EXE"
only run when the keyboard is "up" ( on screen ); see:
https://stackoverflow.com/a/51376030/5732431

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!