pass a value from one form to another
Solution 1:
You create a new form, so old values will be lost. Default values are null.
Form1 F1 = new Form1(); //I'm a new Form, I don't know anything about an old form, even if we are the same type
You can use static vars, which would be the easiest solution to archive your goal, but there are other ways like constructors, containers, events etc.
public static string En1
{
get { return En; }
set { En = value; }
}
public static string Ed1
{
get { return Ed; }
set { Ed = value; }
}
And in the other form
private void button1_Click(object sender, EventArgs e)
{
Form1 F1 = new Form1();
Form1.Ed1 = textBox1.Text;
Form1.En1 = textBox2.Text;
}
Please be advised that a static variable exists only once for a class. So if you have multiple instances and you change the static variable in one, the change also affects all other instances.
Solution 2:
You can create constuctor for form2
which accept 2 arguments and access these variables
Form2 frm2 = new Form2(textBox1.Text,textBox2.Text);
frm2.Show();
Constructor would look like
public Form2(string txt1,string txt2)
{
InitializeComponent();
textbox1value.Text = txt1;
textbox1value.Text=txt2
}
There are many ways to pass data between forms such as
1) Using constructor
2) Using objects
3) Using properties
4) Using delegates
Check this link for details http://www.codeproject.com/Articles/14122/Passing-Data-Between-Forms
Hope It helps!