2011-11-24 33 views
0

我有兩種形式form1和form2,我想將form2的值傳遞給form1。 Form1中有一個文本框,我想從窗體2 值窗體2在其點擊的按鈕值從文本框獲取對窗體2到Form1上從Form2傳輸數據到Form1正在拋出System.Nullreferenceexception

這裏的文本框是我的代碼:

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

要麼'HandleToForm2'或'textBox2'爲空 - 使用調試器找出哪個。 –

+0

我們需要查看您的Form2代碼。也許鑰匙會在那裏;) –

回答

0

您還沒有初始化的HandleToForm2所以它是空的。

0

有兩種可能性:HandleToForm2或textBox2包含null。你可以找到它,如果你這樣做:

在該行上設置斷點。將構建配置切換到「調試」並以調試模式運行應用程序。當您到達斷點時,將鼠標移到HandleToForm2上,VisualStudio會在工具提示中顯示該變量的值。對textBox2做同樣的事情,你會看到哪些變量沒有被初始化。

相關問題