是否可以更改 CEFSharp 上的加载屏幕颜色。与 Chrome 一样,当加载新的 url 时,它将显示一个白色页面,直到加载并呈现为止。是否可以将此加载颜色更改为黑色?
直接使用CEF,似乎有一个命令行参数:--background-color=black(来源https://bitbucket.org/chromiumembedded/cef/issues/1984/momentary-white-flash-with-osr-在#comment-33637201)
但是似乎没有办法直接使用 CEFSharp 来做到这一点。
哇,我太晚了。但我就是这么做的,
var sett = new CefSharp.BrowserSettings();
sett.BackgroundColor = ColorToUInt(System.Drawing.Color.FromArgb(255, 27, 40, 56));
chromium.BrowserSettings = sett;
颜色转Uint函数,
public static uint ColorToUInt(Color color)
{
return (uint)((color.A << 24) | (color.R << 16) | (color.G << 8) | (color.B << 0));
}
我遇到了 CEF 显示白色空白页面的问题,直到我将其设置为加载的页面实际加载为止。这似乎是在调用加载函数且页面加载缓慢时发生的
string url = "https://google.com";
chromiumWebBrowser.load(url);
我发现浏览器在加载下一页时会保留当前页面,所以我通过这样加载页面解决了“白页问题”:
string url = "https://google.com";
int r = 0, g = 0, b = 0;
string colorString = $"#{r.ToString("X2")}{g.ToString("X2")}{b.ToString("X2")}";
string htmlStr = "<!DOCTYPE html><html><body style=\"background-color:" + colorString + ";\" > <script> location.href='"+url+"'; </script> </body></html>";
chromiumWebBrowser.LoadHtml(htmlStr);
我希望这对某人有帮助
单击按钮:
暗淡脚本=“document.body.style.backgroundcolor ='黑色';”
浏览器.executescriptasync(脚本)
//如果你使用vb