我在CEFSharp 41.0.1中使用WinForms并遇到下一个问题:应用程序的背景(google.com已打开)丢失背景并从开始到结束从Windows 7开始透明在Windows 8上切换系统用户直到关注应用程序时提供相同的行为。
此外,对于Windows 8,应用程序有时无法将重点放在之后,您正试图将注意力集中在谷歌的输入上,而是通过应用程序进入后台应用程序。 这对我们的应用来说非常麻烦。
我现在无法显示Windows 7的情况,所以我在Ctrl + Alt + Delete - >之后显示了更改系统用户的Windows 8的行为。切换用户
Windows 8的屏幕截图(切换系统用户后): 对于那种情况是不可能截取屏幕截图,因为每当你专注于应用程序时,它都会重新渲染并正确显示。
我使用下一代码创建浏览器对象并添加到表单中:
_browser = new ChromiumWebBrowser("google.com")
{
Dock = DockStyle.Fill,
MenuHandler = new CustomMenuHandler(),
BrowserSettings = new BrowserSettings()
{
ApplicationCacheDisabled = false,
FileAccessFromFileUrlsAllowed = true,
JavascriptDisabled = false,
LocalStorageDisabled = false,
WebSecurityDisabled = true,
JavaScriptOpenWindowsDisabled = false,
JavascriptDomPasteDisabled = false,
}
};
RegisterWrappers();
Controls.Add(_browser);
和下一个初始化代码:
Cef.Initialize(new CefSettings()
{
CachePath = "cache"
});
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Context(new Form1()));
欣赏任何想法。
答案 0 :(得分:0)
解决方法是从WinForms中删除TransparencyKey属性。在我们的项目中,它被设置为Windows中的白色和白色背景内容在Windows 7中变得透明,但对于Windows 8,它无法正常工作,因此很难检测到问题。