2015-09-29 65 views
0

我試圖在我的列表框中添加一個新用戶。從另一個值獲取文本框值

我打開一個帶有2個文本框,名稱和電子郵件的新表單。 但是,當我點擊「添加」,並返回到父窗體,我嘗試獲取這些值的字符串,但問題是,我的字符串是空的...

當我點擊添加在我的新形式,它只是隱藏,所以它返回到父窗體。

當我點擊frm2中的按鈕後,它返回到此代碼。但字符串是空的。

//nieuw form openen 
      frm2.Text = "add person"; 
      frm2.ShowDialog(); 

       //check 
       string naam = Program.f.txtname.Text, email = program.f.txtemail.Text; 

      //adding to listbox and 'string' list collection 
      lstemail.Items.Add(naam); 
      stremails.Add(email); 

爲了得到我的第二種形式,我使用這個。

static class Program 
    { 
     public static frmAdd f = new frmAdd(); 
     /// <summary> 
     /// The main entry point for the application. 
     /// </summary> 
     [STAThread] 
     static void Main() 
     { 
      Application.EnableVisualStyles(); 
      //Application.SetCompatibleTextRenderingDefault(false); 
      Application.Run(new frmemail()); 
     } 
    } 
+0

你想使用'frm2'參考,並不無論'Program.f'是(它看起來像一個靜態參考)。 – LarsTech

+0

你不需要以這種靜態方式使用frm2。您可以創建一個frm2的實例並使用它。 –

回答

1

您不需要以靜態的方式使用frm2。你可以創建一個frm2的實例並使用它。

1轉到FRM2的設計師,選擇txtnametxtemail,然後在Modifier PropertyGrid中設定值public

2 - 寫這樣的代碼:

var f= new frm2(); 
f.ShowDialog(); 
string naam = f.txtname.Text 
string email = f.txtemail.Text; 
// do what you want with values... 
+0

看起來很簡單,但工作!感謝你的幫助隊友正在爲這一個而努力。 – tieboot

+0

@tieboot歡迎:) –