您的位置:首页 > 其它

Refreshing Datagridview when a child form is closed

2016-03-09 22:21 351 查看
Problem:

I've a dgv on my main form, there is a button that opens up another form to insert some data into the datasource bounded to the dgv. I want when child form closes the dgv auto refresh. I tried to add this in child form closing event, but it doesn't refresh:

Solution:

There are many ways to do this, but the following is the simpliest and it will do what you want and get you started.

Create a public method on your main form.

Modified constructor of second form to take a main form.

Create an instance of the second form passing the main form object.

When closing second form, call the public method of the main form object.

Form1

public partial class Form1 : Form {
public Form1() {
//'add a label and a buttom to form
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
Form2 oForm = new Form2(this);
oForm.Show();
}
public void PerformRefresh() {
this.label1.Text = DateTime.Now.ToLongTimeString();
}
}


[/code]

Form2

public class Form2 : Form {
Form1 _owner;
public Form2(Form1 owner) {
_owner = owner;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form2_FormClosing); // When I run this line, it shows error.
    this.Disposed += new EventHandler(Form2_Disposed);// This line is used to replace above line
    
}

    

    private void Form2_Disposed(object sender, EventArgs e)
    {
      _owner.PerformRefersh();
    }

private void Form2_FormClosing(object sender, FormClosingEventArgs e) {
_owner.PerformRefresh();
}
}


Reference : http://stackoverflow.com/questions/2395624/how-to-refresh-datagridview-when-closing-child-form[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: