我的 Chromium 浏览器对象不会显示在 Winform 中

My Chromium browser object won't display in Winform

我使用的是 .Net WebBrowser 对象,但不喜欢兼容模式的混乱工作方式。所以我切换到 CEFSharp 对象。

但是,该对象没有显示在我的表单中。我用 CEFSharp 查看了 Example Winform 项目,但它似乎没有在 winform 中显示它,而是作为一个单独的应用程序运行,这不是我想要的。

我想我遗漏了一些明显的方法或 属性 必须最初设置。在下面的代码中,我使用了用于 CEFSharp 的代码,您会看到两行注释掉了,这是我用于 .Net WebBrowser 的代码。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using CefSharp.WinForms;

namespace GoogleSiren
{
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        ChromiumWebBrowser myBrowser = new ChromiumWebBrowser("http://wwww.cnn.com");
        //WebBrowser myBrowser = new WebBrowser();

        //myBrowser.Navigate("http://www.cnn.com");
        myBrowser.Location = new Point(200, 200);
        myBrowser.Size = new Size(500, 300);
        this.Controls.Add(myBrowser);
    }
}

}

尝试将大小和位置设置为构造函数的一部分:

ChromiumWebBrowser myBrowser = new ChromiumWebBrowser("http://wwww.cnn.com") 
{
   Location = new Point(200, 200),
   Size = new Size(500, 300)
};
this.Controls.Add(myBrowser);

我的代码缺少 Cef.Initialize() 调用。一旦我添加它工作正常。