C# CefSharp封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# CefSharp封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!相关的知识,希望对你有一定的参考价值。

CefSharp封装的浏览器,比如百度搜索框用触摸屏,触摸点击是有光标。但软键盘无法输入中文。用鼠标点击后输入框正常。求大神解答谢谢! 系统WIN7X64 CefSharpV81.3.100版本。

github上有问题的描述

解决方法:

// browser是窗口上的浏览器控件

browser.PreviewTextInput += (o, e) =>   

 foreach (var character in e.Text)
           // 把每个字符向浏览器组件发送一遍
       browser.GetBrowser().GetHost().SendKeyEvent((int)WM.CHAR, (int)character, 0);
   

    // 不让cef自己处理
   e.Handled = true; 

;



没测试过,你最好自己测试下,题外话,其实用electron来开发不会更香吗?

追问

谢谢 小白初用cefsharp哈哈不懂不过最后用另一种方法修复了。触摸屏上窗口加载了但是browser没激活。用触摸去点也是不行。但是发现用鼠标点一下browser就好了。最后就模拟了下鼠标点击在browser上。感谢回复!

参考技术A 最后答主模拟了下鼠标点击在browser,这个怎么做的,我也是CefSharp在触屏机无法输入的问题,我是插了个真鼠标点下才可以

以上是关于C# CefSharp封装的浏览器触摸获得焦点,有光标。无法输入中文。鼠标点击后正常。求解答谢谢!的主要内容,如果未能解决你的问题,请参考以下文章

cefsharp 运行环境与JS

C# CefSharp 如何获取当前页的URL

C# 使用CefSharp兼容谷歌浏览器并播放MP4视频

CefSharp.wpf Web 浏览器导航事件 (C# .Net)

在 C# App 中嵌入 Chrome 浏览器使用 CefSharp

.Net(C#) CefSharp Chrome 浏览器控件后台执行Iframe中的Js代码的方法