c# - CefSharp如何像真正的浏览器C#一样清除当前的chrome web浏览器控制内容
问题描述
我们需要在图像服务器中查询图像并将其显示在 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 浏览器并为每个启动请求重新创建它之外,还有其他解决方案吗?
解决方案
ChromiumWebBrowser.LoadString(string html, string url) 很有帮助,但是除了 html 响应之外,chrome 浏览器还会使用客户端(公司)的代理服务器响应进行渲染。
尝试过,Load() API 即 ChromiumWebBrowser.Load("https:////somestring/someurl"),它呈现出空内容的魅力。感谢您的建议。
推荐阅读
- html - 在 Angular 8 中使用共享组件进行延迟加载
- python - 从 Django 页面更新静态 JSON 文件
- gmail - 我如何使用 g-suite 自动签名的代码?
- c# - 如何调整datagridview单元格中的图像大小
- webi - 在 Webi 中查询最近的上一个值
- javascript - 如何使用 jQuery 定位正文中的第一个段落标签
- python - 仅在 Linux 中与 TDK-Lambda ZUP 的串行 RS485 / RS232 通信非常慢
- jmeter - 使用智能卡和 knox 进行 JMeter 测试
- android - 如何在android中将颜色填充到svg到特定百分比
- python-3.x - 如何在一个简单的 Python 程序中显示图片?