将数据从Form2传输到Form1会引发System.Nullreferenceexception

时间:2011-11-24 06:48:59

标签: c#

我有两个表单form1和form2,我想将值从form2传递给form1。 Form1有一个文本框,我想要Form2中的值  Form2上有一个按钮,其值从form2上的文本框到form1上的文本框

这是我的代码:

Form2.cs

private Form1 HandleToForm2;

public Form2(Form1 frmHandle2)
    {

        HandleToForm2 = frmHandle2;
        InitializeComponent();


    }

private void update_Click(object sender, EventArgs e)
    {  

            HandleToForm2.WriteToTextBox2(textBox2.Text);
            this.Hide();
    } 

Form1.cs的

public void WriteToTextBox2(string inputText1)

    {

       this.textBox8.Text = inputText1;

     }

不知道为什么抛出NullReference异常“对象未设置为对象的实例

 HandleToForm2.WriteToTextBox2(textBox2.Text); //this line throws this exception

提前致谢: - )

2 个答案:

答案 0 :(得分:0)

您尚未初始化HandleToForm2,因此它为空。

答案 1 :(得分:0)

有两种可能:HandleToForm2或textBox2包含null。如果你继续这样做,你可以找到它:

在该行上设置断点。将Build Configuration切换为“Debug”并以调试模式运行应用程序。到达断点时,将鼠标移到HandleToForm2上,VisualStudio在工具提示中显示该变量的值。对textBox2执行相同操作,您将看到哪些变量未初始化。