2017-05-13 66 views
0

形式1是主要形式,而在表格2,存在形式使用的輸入1.「沒有給定的參數對應於所要求的形式參數」上的構造

表1:

public partial class Form1 : Form 
{ 
    public Form1(string size) 
    { 
     InitializeComponent(); 
     lblsize.Text = size; 

    } 
} 

表2:

public void btnok_Click(object sender, EventArgs e) 
    { 

     //string ukuran = txtsize.Text; 
     Form1 frm1 = new Form1(txtsize.Text); 
     this.Hide(); 

    } 

然後我得到這個錯誤:

"There is no argument given that corresponds to the required formal parameter 'size' of 'Form1.Form1(string)'

+1

儘管@CodingYoshi給了你答案,你應該已經發布了**錯誤發生的地方。否則,我們將如何知道需要修復的位置? –

回答

2

在Windows窗體應用程序項目中,您將有一個名爲Program.cs的文件。在那裏,你會發現一行類似的代碼:

Application.Run(new Form1()); 

這是進入你的應用程序的入口點。既然您在Form1類中引入了另一個構造函數,則無法找到默認的無參數構造函數。因此,你會得到那個錯誤。

修復

要修正此錯誤,您可以添加一個無參數的構造函數,以您的Form1類是這樣的:

public Form1() 
{ 
} 

這將允許Program.cs類條目中構建Form1,和你將有您的其他構造函數爲您的需要通過size它。

附加說明

在C#中,如果你有一個這樣的類:

public class Foo 
{ 
    // no constructor 
} 

編譯器會爲您生成一個默認這樣的:

public class Foo 
{ 
    public Foo() { } 
} 

但只要你添加了一個構造函數(你這樣做了),那麼編譯器就不會再爲你創建默認的構造函數了它沒有)。希望解釋有幫助。

相關問題