最近在做一个win10 下的触摸屏应用程序,采用的是winform + Xilium.CefGlue的架构,加载完网页之后,发现当用鼠标点击网页上的输入框时,能够通过软键盘正常输入文字,但通过触摸点击输入框,虽然能获得输入光标,却无法输入任何文字。期间尝试各种方法无果,最后科学上网,终于在google上看到外国友人遇到相同的问题,并找到解决的办法,重写CefFocusHandler下OnGotFocus方法,加入代码:
try
{
host = _cefWebBrowser.WebBrowser.CefBrowser.GetHost();
if (host != null)
{
host.SetFocus(true);
}
}
finally
{
if (host != null)
{
host.Dispose();
host = null;
}
}
成功解决!感谢google。