继承窗体时找不到类型 " " 的构造函数 C# 窗体



创建了一种从另一种形式继承的表单,但是由于某种原因,我在找不到的" baseform"上获得了错误构造函数。这是继承的类构造函数:

public partial class loadHtmlFormsDatabaseForm :      NEA_Official.createHtmlFormsForm
{
    List<field> listOfFields = new List<field>();
    static string username1;
    int originalListOfFieldsCount;
    htmlFormsProject loadedProject;
    public loadHtmlFormsDatabaseForm(htmlFormsProject loadProject, string username) : base(username1)
    {
        username1 = username;
        loadedProject = loadProject;
        InitializeComponent();
    }

这是基类的构造函数:

    public partial class createHtmlFormsForm : Form
{
    List<field> listOfFields = new List<field>();
    string username = "";
    public createHtmlFormsForm(string username1)
    {
        username = username1;
        InitializeComponent();
    }

您可以通过在基类中没有参数的构造函数来修复它:

public partial class createHtmlFormsForm : Form
{
 List<field> listOfFields = new List<field>();
 string username = "";
 public createHtmlFormsForm(string username1)
 {
    username = username1;
    InitializeComponent();
 }
 public createHtmlFormsForm()
 {
    InitializeComponent();
 }
}

如果您不需要没有参数的构造函数,则可以私有创建它:

public partial class createHtmlFormsForm : Form
{
 List<field> listOfFields = new List<field>();
 string username = "";
 public createHtmlFormsForm(string username1)
 {
    username = username1;
    InitializeComponent();
 }
// private contructor with no parameter
 private createHtmlFormsForm()
 {
    InitializeComponent();
 }
}

或者您可以使用过时的属性:

public partial class createHtmlFormsForm : Form
{
 List<field> listOfFields = new List<field>();
 string username = "";
 public createHtmlFormsForm(string username1)
 {
    username = username1;
    InitializeComponent();
 }
 [Obsolete("Designer only", true)]
 public createHtmlFormsForm()
 {
    InitializeComponent();
 }
}

it FOUD但发送错误的参数。

: base(username1)更改为: base(username)

最新更新