2017-02-26 48 views
1

创建了一个从另一个表单继承的表单,但由于某种原因,我得到了类型“baseForm”未找到的错误构造函数。这是继承类的构造函数:类型“”的构造函数在继承形式时找不到c#形式

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(); 
    } 
+0

看起来不错。我可以重现相同的情况,它没有任何错误的工作。你可以告诉它是运行时错误还是编译时错误?哪一行代码显示错误? –

+0

@ChetanRanpariya程序运行良好,但它不允许我查看表格的设计 – leightonblackburn

+0

当您尝试查看表单的设计时会发生什么? –

回答

0

它foud但发送错误的参数。

: base(username1)变化: base(username)

0

您可以通过超负荷像这样在基类中没有参数,解决它的构造:

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(); 
} 
}