CefSharp - 更改加载屏幕背景颜色

问题描述 投票:0回答:4

是否可以更改 CEFSharp 上的加载屏幕颜色。与 Chrome 一样,当加载新的 url 时,它将显示一个白色页面,直到加载并呈现为止。是否可以将此加载颜色更改为黑色?

直接使用CEF,似乎有一个命令行参数:--background-color=black(来源https://bitbucket.org/chromiumembedded/cef/issues/1984/momentary-white-flash-with-osr-在#comment-33637201

但是似乎没有办法直接使用 CEFSharp 来做到这一点。

css chromium-embedded cefsharp
4个回答
4
投票

哇,我太晚了。但我就是这么做的,

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));
}

0
投票

我在 CefSharp 中找到了这个属性:

IBrowserSettings.BackgroundColor
docs)。


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);

我希望这对某人有帮助


-1
投票

单击按钮:

暗淡脚本=“document.body.style.backgroundcolor ='黑色';”

浏览器.executescriptasync(脚本)

//如果你使用vb

© www.soinside.com 2019 - 2024. All rights reserved.