Skip to main content
 首页 » 编程设计

C# Web 浏览器构造函数

2024年04月30日39sxdcgaq8080

我正在尝试将 Web 浏览器添加到现有的 C# 应用程序,但是,我已经有大约 6 年没有使用 C# 了,我对它的工作原理非常不熟悉。

我正在尝试使用以下代码将浏览器添加到 partial class(同样,我不熟悉的东西):

public partial class WebBrowser : WebBrowserBase{ 
    public WebBrowser(){ 
        ... 
    } 
    ... 
} 

但是,我在构造函数上遇到编译错误:

'WebBrowserBase' does not contain a constructor that takes 0 arguments

我谷歌了这个,并在 SO 上遇到了以下问题:C# Error: Parent does not contain a constructor that takes 0 arguments .我尝试按照答案中的建议进行操作,并将我的代码更改为:

public partial class WebBrowser : WebBrowserBase{ 
    public WebBrowser(int i) : base(i){ 
        ... 
    } 
    ... 
} 

但是,我随后收到一个编译错误:

'WebBrowserBase' does not contain a constructor that takes 1 arguments

所以我猜这个问题与构造函数中的参数数量无关...有人可以解释我在这里做错了什么吗?

请您参考如下方法:

如果你看看WebBrowserBase Class它指出:

“此 API 支持产品基础架构,不应直接在您的代码中使用。”

而且它似乎没有任何公共(public)构造函数 - 所以您不能从它继承。但是如果你不想创建你自己的 WebBrowser 控件(改变它的一些功能),你应该只使用默认的 System.Windows.Forms.WebBrowser XAML View :

<Window x:Class="WpfApplication1.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="MainWindow" 
    Width="525" 
    Height="350"> 
    <WebBrowser HorizontalAlignment="Stretch" VerticalAlignment="Stretch"  /> 
</Window>