首页 > 解决方案 > 当有硬件键盘时,有没有办法在 UWP 应用程序中显示触摸屏键盘 - Windows 10

问题描述

我正在为 Windows 10 操作系统开发 UWP 应用程序。当用户单击文本框时,我需要显示触摸屏键盘。

以下是要求。

1.Windows 10 操作系统

2.平板模式关闭

3.附有硬件键盘。

我已经浏览了 Microsoft 示例https://github.com/microsoft/Windows-universal-samples/tree/master/Samples/TouchKeyboard。但找不到解决办法。

我启用了“在不处于平板电脑模式且未连接键盘时显示触摸键盘”键盘设置。正如它所说,它仅在没有连接硬件键盘时才有效。

但是我需要在有硬件键盘的同时显示触摸屏键盘

我尝试使用 InputPane 作为以下代码示例:

主页.xaml

< TextBox x:Name="text1" Width="300" Height="50" ></TextBox>

MainPage.xaml.cs

   {
        this.InitializeComponent();
        text1.AddHandler(TappedEvent, new TappedEventHandler(text1_Tapped), true);
   }


 private void text1_Tapped(object sender, TappedRoutedEventArgs e)
   {
        InputPane pane = InputPane.GetForCurrentView();
        pane.TryShow();
   }

连接硬件键盘时也不会显示触摸屏键盘。

请指导我解决这个要求。

标签: c#uwpwindows-10

解决方案


当有硬件键盘时,有没有办法在 UWP 应用程序中显示触摸屏键盘 - Windows 10

从这个案例中,我们无法在 UWP 桌面模型中启动触摸屏键盘。但是我们可以启动 wpf 应用程序,然后osk.exe间接调用。

要将 wpf 应用程序集成到 UWP 中,我们可以参考本教程。并通过 UWP 与 wpf 客户端进行通信AppService

osk.exe当 TextBox 从 UWP 聚焦时,我们可以发送消息告诉 wpf 客户端启动Client


推荐阅读