【发布时间】:2021-02-08 14:29:26
【问题描述】:
我们需要在图像服务器中查询图像并将其显示在 Windows 窗体中的 CEF Web 浏览器控件上。
public partial class CustomerWindow : Form
{
private string image_url;
private ChromiumWebBrowser _browser;
private bool _browserInitialised = false;
public CustomerWindow()
{
browser.IsBrowserInitializedChanged += OnIsBrowserInitializedChanged;
}
// calls to server for validating user credentials and get cookie
public LoadData()
{
if(_browserInitialised)
{
browser.Load(_imsContextualImageUrl);
}
}
public void OnIsBrowserInitializedChanged(object sender, EventArgs e)
{
var chromeWebBrowser = (ChromiumWebBrowser)sender;
if (!chromeWebBrowser.IsBrowserInitialized) return;
chromeWebBrowser.Load(_imsContextualImageUrl);
_browserInitialised = true;
}
}
我们只为每个应用程序创建一次 CEF 浏览器,并在表单的关闭事件中处理它。
代码正在工作并为有数据的url显示图像,当没有数据时,我们需要清除之前在CEF浏览器上显示的图像并显示为空的CEF浏览器。
除了处理 CEF 浏览器并为每个启动请求重新创建它之外,还有其他解决方案吗?
【问题讨论】:
标签: c# chromium-embedded