c# passing data between forms
PROGRAMMING HELP 2017/10/05 02:07
C# project with two forms
in Form1 inside the function that run (call) Form2
public partial class Form1 : Form // this is the main form public partial class Form2 : Form // this is the second form
To pass variables (values, data) from Form1 to Form2
Case: public variables in Form2
public string input_variable; // put this in Form2 as global variable public string output_variable; // put this in Form2 as global variable
in Form1 inside the function that run (call) Form2
Form2 form = new Form2(); form.input_variable= "some string data"; // send the input_variable from Form1 to Form2 DialogResult result = form.ShowDialog(); if (result == DialogResult.OK) { public string local_variable = form.output_variable; }
In Form2 put an "OK" button that sets the value of output_variable.
private System.Windows.Forms.Button bOK; this.bOK.DialogResult = System.Windows.Forms.DialogResult.OK; private void bOK_Click(object sender, EventArgs e) { output_variable = "some string to return to Form1"; }
Case: private variables in Form2
In Form2 create public function that sets all the variables required and takes as parameters the variables transferred from Form1
public void InitData( string str_from_form1) { input_variable = str_from_form1; }
In Form1 call this function and pass the variable or value required as parameter.
Form2 form = new Form2(); form.InitData(string_to_pass_toForm2);