让 CefSharp 浏览器显示在 Window.Content

Getting CefSharp browser to show in Window.Content

我一直在阅读有关如何使用 WinForms 实现 CEF 的信息,并且已经能够使用 Forms 自己重现实现它的方法。我需要做的不是使用 Form class 并将其内容设置为 CEF 浏览器,我想使用 System.Window 并让它加载 CEF 浏览器.让它以同样的方式显示似乎对我不起作用

它的工作示例

CefSharp.WinForms.ChromiumWebBrowser cBrowser = 
  new CefSharp.WinForms.ChromiumWebBrowser("https://www.google.com");
Form form = new Form();
form.Controls.Add(cBrowser);
form.Show();`

我想做的就是这个

System.Window window = new System.Window();
CefSharp.WinForms.ChromiumWebBrowser cBrowser = 
   new CefSharp.WinForms.ChromiumWebBrowser("https://www.google.com");
window.Content = cBrowser;
window.Show();`

但是使用Window class浏览器根本不显示。关于为什么的任何想法?如果我使用 WebBrowser class 对象并将其设置为 Window。内容有效,但如果我使用 CefSharp 生成的浏览器则无效。

第一个示例有效,因为它使用了 WinForms 理解的对象:Form。 第二个示例不起作用,因为您在 WinForms 中使用了错误的 class。 在 WinForms 中,一切都是表单。

Window class 来自演示框架。如果要使用 Window class.

,则必须使用 WPF 应用程序

如果你想使用 WPF,你将不得不使用 CefSharp.WPF nuget 包。