解决cefSharp的wpf版本里无法输入中文的问题

复制代码
chromeBrowser = new ChromiumWebBrowser(Models.StaticList.ApiUrl + "/Home/Menu");
                    chromeBrowser.MenuHandler = new MenuHandler();
                    chromeBrowser.HorizontalAlignment = HorizontalAlignment.Stretch;
                    chromeBrowser.VerticalAlignment = VerticalAlignment.Stretch;
                    chromeBrowser.PreviewTextInput += (obj, args) =>
                     {
                         foreach (var character in args.Text)
                         {
                             // 把每个字符向浏览器组件发送一遍
                             chromeBrowser.GetBrowser().GetHost().SendKeyEvent((int)WM.CHAR, (int)character, 0);
                         }
                         // 不让cef自己处理
                         e.Handled = true;
                     };
                    chromeBrowser.LostFocus += ChromeBrowser_LostFocus;
                    chromeBrowser.GotFocus += ChromeBrowser_GotFocus;
                    chromeBrowser.WpfKeyboardHandler = new CefSharp.Wpf.Experimental.WpfImeKeyboardHandler(chromeBrowser);
复制代码

最后一行,加粗的部分加上后就解决了

 

来源:https://github.com/cefsharp/CefSharp/issues/1262

 

 

posted @   星星c#  阅读(582)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示