无法显示Form2(Form1 frm)

时间:2015-08-24 12:24:56

标签: c# winforms

我正在使用C#和Form2(设置表单)必须从Form1访问对象和数据,所以我将此代码添加到Form1。

Form1 ths;

public Form2(Form1 frm)
{
     InitializeComponent();
     ths = frm;

这有效,但是当有人点击“设置”按钮时我需要让Form2显示,所以我尝试了这段代码。

private void button1_Click(object sender, EventArgs e)
{
 Form2 form2 = new Form2();
  form2.Show();
}

但是我收到了错误,所以我尝试了,

private void button1_Click(object sender, EventArgs e)
{
     Form2 form2 = new Form2(Form1 frm);
      form2.Show();
}

任何想法都会非常感激。

2 个答案:

答案 0 :(得分:2)

试试这个

private void button1_Click(object sender, EventArgs e)
{
     Form2 form2 = new Form2(this);
      form2.Show();
}

您需要传递Form1的当前实例

答案 1 :(得分:1)

使用

Form2 form2 = new Form2(this); //here 'this' is current class instance

而不是

Form2 form2 = new Form2(Form1 frm); //don't mention the parameter type while calling