Programmatically open On-Screen Keyboard in UWP

末鹿安然 提交于 2019-12-12 07:55:27

问题


Is it possible in UWP to force it to open the On Screen Keyboard (osk.exe)?

For example, in C# it is possible using System.Diagnostics.Process.Start("osk.exe");

Doing the above in UWP results in compile error saying there is no Process namespace.

I know that in Tablet mode, if I programmatically focus on a TextBox, it will show up the OnScreen keyboard.

But is it possible when in Desktop mode?


回答1:


Is there a way for touchkeyboard to appear in desktop mode?

Ref the document in Keyboard interactions

Depending on the device, the touch keyboard appears when a text field or other editable text control gets focus, or when the user manually enables it through the Notification Center:

Note The user might have to go to the Tablet mode screen in Settings > System and turn on "Make Windows more touch-friendly when using your device as a tablet" to enable the automatic appearance of the touch keyboard.

So the touch keyboard can appear automatically in tablet mode when users sets the input focus to a text control by using touch input. However, this won't happen in desktop mode and in UWP, there is no API to open it programmatically by now.

To show touch keyboard in desktop mode, we need the user manually enables it by clicking touch keyboard button and users can see this button by checking "Show touch keyboard button" in taskbar.

You are welcome to submit a request for this feature through UserVoice and Windows Feedback Hub app.



来源:https://stackoverflow.com/questions/39618127/programmatically-open-on-screen-keyboard-in-uwp

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