为了账号安全,请及时绑定邮箱和手机立即绑定

UWP 无法使用自定义 OSK 在 Web 视图的文本框中输入数据

UWP 无法使用自定义 OSK 在 Web 视图的文本框中输入数据

C#
炎炎设计 2023-08-20 15:41:46
我有一个在 webview 中运行的角度应用程序和一个在 uwp 中运行的自定义屏幕键盘(OSK)。我无法使用自定义 OSK 在 Web 视图中的文本框中输入数据,尽管它对于正常的 UWP 文本框工作正常。当我点击 OSK 时,它似乎失去了焦点。我尝试过WebView.Focus(FocusState.Programmatic)调用脚本InvokeScriptAsync来将焦点设置回 WebView 事件中的 webview,LostFocus但没有任何效果。我也尝试过使用焦点管理器。FocusMovementResult result; result = await FocusManager.TryFocusAsync(WebView, FocusState.Programmatic);我使用在文本框中注入输入InputInjector。inputKey.VirtualKey = ((ushort)((VirtualKey)Enum.Parse(typeof(VirtualKey), input.Text, true))); inputInjector.InjectKeyboardInput(new[] { inputKey });对于 OSK,该属性也AllowFocusOnInteraction设置为 False。 <app:Keyboard x:Name="keyboard" AllowFocusOnInteraction="False"/>
查看完整描述

1 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

我能够通过 window.external.notify使用事件侦听器通知 UWP 有关模糊事件的信息来解决此问题,并使用此通知命令将焦点设置回 webview

webview.Focus(FocusState.Programmatic);
await webView.InvokeScriptAsync(@"eval", new string[] { "document.focus()" });


查看完整回答
反对 回复 2023-08-20
  • 1 回答
  • 0 关注
  • 98 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信