C# 我的Chromium浏览器对象赢了';t在Winform中显示

C# 我的Chromium浏览器对象赢了';t在Winform中显示,c#,.net,cefsharp,C#,.net,Cefsharp,我使用的是.Net WebBrowser对象,但不喜欢兼容模式的混乱工作方式。所以我换成了尖锐的物体 但是,该对象不会显示在我的窗体中。我用CEFSharp查看了Winform项目的示例,但它似乎没有在Winform中显示它,而是作为一个单独的应用程序运行,这不是我想要的 我想我缺少了一些明显的方法或属性,这些方法或属性必须首先设置。在下面的代码中,我使用了CEFSharp,您将看到注释掉的两行代码,这是我用于.Net WebBrowser的有效代码 using System; using Sy

我使用的是.Net WebBrowser对象,但不喜欢兼容模式的混乱工作方式。所以我换成了尖锐的物体

但是,该对象不会显示在我的窗体中。我用CEFSharp查看了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()调用。有一次我补充说它工作得很好。

注意:不要指望CefSharp会以1:1的比例加入MS
WebBrowser
API。谢谢。当我添加Cef.Initialize()时,它确实是一个复制品,并且可以正常工作。我在发行版中看到的示例将其作为一个单独的应用程序生成,但没有该调用。我不明白的是,为什么我搜索时没有看到这个傻瓜。