The controls on form 2 that are used to refresh form 1 must have their modifier set to Public, so form 1 can see the controls. This includes the button of form 2. Then add a handler for form 2's button click even in form 1. Form 2 must be declared at the class level in form 1. This is the code for form 1. When the button click event on form 2 fires, it changes the text property of a textbox on form 1.
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Form2 frm;
private void dostuff()
{
frm = new Form2();
frm.button1.Click += new EventHandler(button1_Click);
frm.Show();
}
private void button1_Click(object sender, EventArgs e)
{
this.textBox1.Text = frm.textBox1.Text;
}
private void Form1_Load(object sender, EventArgs e)
{
dostuff();
}
}