如何设置另一个表单的值变量字符串?

时间:2015-08-18 11:07:29

标签: c# winforms

在我的form1中我有一个变量

public string parent;

在我的form2中我有代码来设置该变量的值

 Form1 bfm = new Form1();

 bfm.ShowDialog(this);
 bfm.parent = "EditItem";

但是当我使用变量parent时,它给我一个空引用异常

这可能是什么问题?谁能帮我? 先感谢您。我只是个初学者。

2 个答案:

答案 0 :(得分:0)

ShowDialog是模态的。在关闭对话框之前,parent的分配不会发生。您需要在致电ShowDialog之前完成作业。

var bfm = new Form1() { parent = "EditItem" };
bfm.ShowDialog(this);

答案 1 :(得分:0)

这可能对你有所帮助......

只需在Form1类上创建一个Parent,然后在显示Form1之前设置它。

public class Form1
{
  ...
 public string Parent{ get; set; }

 private void Form1_Load(object sender, EventArgs e)
 {
   MessageBox.Show(this.Parent);
 }
}

从Form2:

public void button1_Click(object sender, EventArgs e)
{
string dName = "EditItem";
Form1 bfm= new Form1();
bfm.Parent= dName;
bfm.Show();
this.Hide();
}