cefsharp wpf 中文输入问题解决方法
摘要
最近在搞一个客户端的项目,考虑使用wpf,内嵌webView的方式,访问h5页面。所以使用了CefSharp组件,但发现一个问题,就是在输入中文的时候,无法输入。
解决办法
去官方github的搜索了下,之前有人遇到过,并且解决了,
下载下来之后,重写OnPreviewTextInput方法,然后编译。
//CefSharp.Wpf.ChromiumWebBrowser 增加
protected override void OnPreviewTextInput(TextCompositionEventArgs e)
{ foreach (char t in e.Text)
{
managedCefBrowserAdapter.SendKeyEvent((int)WM.CHAR, (int)t, ); // or WM.IME_CHAR?
}
base.OnPreviewTextInput(e);
}
//SourceHook方法注释掉case WM.CHAR:
或者监听PreviewTextInput事件,对输入内容进行处理。
var setting = new CefSharp.CefSettings();
CefSharp.Cef.Initialize(setting);
ChromiumWebBrowser webView = new CefSharp.Wpf.ChromiumWebBrowser();
webView.PreviewTextInput += (obj, args) =>
{
foreach (var character in args.Text)
{
// 把每个字符向浏览器组件发送一遍
webView.GetBrowser().GetHost().SendKeyEvent((int)WM.CHAR, (int)character, );
} // 不让cef自己处理
e.Handled = true;
};
如图

但上面的问题解决了,仍有一个输入法候选词定位的问题,无法定位到输入框下面,这个问题也没找到解决办法,如图所示:

下面是winform使用cefsharp的情况

参考资料
http://www.cnblogs.com/wuya/p/cefsharp-wpf-chinese-input-mehond.html
http://www.cnblogs.com/ShengM/p/5832458.html
cefsharp wpf 中文输入问题解决方法的更多相关文章
- WingIDE中文乱码问题解决方法
WingIDE中文乱码问题解决方法 安装完WingIDE后,首次运行python脚本时,若脚本中含有UTF-8中文,在Debug I/O输出框中,全部变成了乱码. 这时其实我们设置下WingIDE的编 ...
- 【转】asp.net Cookie值中文乱码问题解决方法
来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqia ...
- soapUI参数中文乱码问题解决方法 (groovy脚本中文乱码)
soapUI参数中文乱码问题解决方法 可能方案1: 字体不支持中文,将字体修改即可: file-preferences-editor settings-select font 修改字体,改成能显示中文 ...
- LoadRunner中文乱码问题解决方法
LoadRunner中文乱码问题解决方法 前段时间在录制,增强,整合LoadRunner脚本,期间两次遇到了中文乱码问题.在此记录一下中文乱码问题的解决办法. 一.录制回放中文乱码 我录制登陆的脚本, ...
- python3 库pandas写入csv格式文件出现中文乱码问题解决方法
python3 库pandas写入csv格式文件出现中文乱码问题解决方法 解决方案: 问题是使用pandas的DataFrame的to_csv方法实现csv文件输出,但是遇到中文乱码问题,已验证的正确 ...
- soapUI参数中文乱码问题解决方法&soap UI工具进行web接口测试
soapUI参数中文乱码问题解决方法 可能方案1: 字体不支持中文,将字体修改即可: file-preferences-editor settings-select font 修改字体,改成能显示中文 ...
- tomcat启动控制台中文乱码问题解决方法
tomcat启动控制台中文乱码问题解决方法,修改tomcat安装路径/conf/logging.properties文件 java.util.logging.ConsoleHandler.encodi ...
- tomcat项目中文乱码问题解决方法
在部署tomcat项目时经常会遇到中文乱码问题,解决的方法可参考以下步骤. 1.更改Tomcat安装目录下的conf\server.xml,指定浏览器的编码格式为"utf-8"格式 ...
- Zip文件中文乱码问题解决方法(MAC->Windows)
前言: 最近收到的ZIP交互原型,打开查看中文一堆乱码.主要是产品都是高大上啊,用的都是MAC,咱酷毙用的Windows,话说安卓APP,你用MAC搞啥啊.可恨的压缩用的是zip,不是rar之类的.为 ...
随机推荐
- RabbitMq Queue一些方法及参数
方法: 1.QueueDeclare 声明队列 public static QueueDeclareOk QueueDeclare(String queue, Boolean durable, Boo ...
- JDK1.8源码Collections
正文: 一.概述: 此类完全由在 collection 上进行操作或返回 collection 的静态方法组成.它包含在 collection 上操作的多态算法,即“包装器”,包装器返回由指定 col ...
- pymongo创建索引
from database import db db_list = ["table1", "table2", "table3", " ...
- 001_fpm打包命令详解
使用fpm来制作rpm包 2017/2/22 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 ...
- 在VMware上安装Ubuntu软件步骤与遇到的相关问题及解决方案
图解演示环境版本: 本机系统: WIN10 虚拟机:VMware Workstation 12(中文版) 安装目标:Ubuntu Desktop 12.04 LTS (请点击这里)先下载好iso镜像 ...
- python基础--time和datetime模块
一:说明在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素.由于Python的time模块实现主要调用C库,所以各个平台可能 ...
- jenkins主从从服务器发布脚本执行成功但总提示失败 FATAL: Remote call on XXXX failed
主从jenkins当调用 slave 执行编译脚本后提示如下错误,找了半天怎么也没有问题,后来忽然发现slave上java的版本和master不同,一个 1.8 一个 1.10,将slave降回1.8 ...
- 使用react中遇到的问题
引入antdesign中Carousel走马灯时遇到问题? Uncaught Error: Element ref was specified as a string (slick) but no o ...
- Android 隐藏、显示软键盘方法
隐藏软键盘的终极方法: public class SoftKeyboardUtil { /** * 隐藏软键盘(只适用于Activity,不适用于Fragment) */ public static ...
- 远程执行shell
目前我的需求是在我的hadoop集群搭建起来前,能定时做一下简易指标的监控,目前我的方案就是在我的server机上,定时执行远程脚本出指标数据,然后通过python脚本发送邮件. 远程执行脚本如下: ...