gpt4 book ai didi

c# - CefSharp WPF Web 浏览器未显示或呈现

转载 作者:太空狗 更新时间:2023-10-29 18:31:29 24 4
gpt4 key购买 nike

我是 CefSharp 的新手我已经创建了一个类库项目并引用了 CefSharp 库来呈现 Web 浏览器,但是我在显示 Web 浏览器时遇到了一些问题。请找到确切的代码

WebBrowser_test1:

 public partial class ChildWidget : Window
{
public CefSharp.Wpf.ChromiumWebBrowser webView;
public Widget()
{
InitializeComponent();
CefSharp.CefSettings settings = new CefSharp.CefSettings();
settings.PackLoadingDisabled = true;
if (CefSharp.Cef.Initialize(settings))
{
webView = new CefSharp.Wpf.ChromiumWebBrowser();
main_grid.Children.Add(webView);
webView.Address = "http://www.google.co.uk";
}
}
}

我在另一个项目中引用了这个库(dll)

public MainWindow()
{
InitializeComponent();
Button newbutton = new Button();
newbutton.Width = 50;
main_grid.Children.Add(newbutton);
newbutton.Click += ButtonClick;
}

private void ButtonClick(object sender, RoutedEventArgs e)
{
try
{
Webbrowser_test1.ChildWidget childWidget = new Widget();
childWidget.Show();
}
catch (Exception)
{

throw;
}
}

现在单击按钮,我将打开 (WebBrowser_test1) 子小部件,我将在其中显示 Web 浏览器。当窗口打开时,它显示空白。

如果有遗漏请告诉我

最佳答案

在创建 ChromiumWebBrowser 后订阅 IsBrowserInitializedChanged。然后,一旦浏览器被初始化,您就可以调用 Load 并且您的控件将被显示。

...
_browser = new ChromiumWebBrowser();
mainGrid.Children.Add(_browser);
_browser.IsBrowserInitializedChanged += OnIsBrowserInitializedChanged;
...

void OnIsBrowserInitializedChanged(object sender, DependencyPropertyChangedEventArgs e)
{
if (_browser.IsBrowserInitialized)
{
_browser.Load("https://www.google.com/");
}
}

关于c# - CefSharp WPF Web 浏览器未显示或呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28499257/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com