以Windows窗体刷新DataGridView

我有两个表单,它是表单A和表单B.当我单击表单BI上的保存按钮时,需要刷新表单A的DataGridView。

我应该使用哪种方法?

使用事件是这样做的一种方式。 下面是另一种更面向对象的方式。

在FormA中添加公共刷新方法。

public void RefreshDataGrid() { //Do refresh } 

在构造FormB时将FormA的实例传递给FormB。 您必须创建FormB构造函数以获取FormA实例。

  private FormA myFormA; public FormB(FormA formA) { myFormA = formA; } 

现在,您可以从FormB调用FormA.ResfreshGrid()方法。

 myFormA.RefreshGrid(); 

在表单A中实现代码如下:

 private delegate void DEmpty(); public void RefreshDataGrid() { this.Invoke(new DEmpty(datagrid.Refresh)); } 

然后在B上单击按钮时调用此方法

创建一个绑定gridview的方法,在表单A的表单加载上调用此方法,如果表单已经打开,则必须使用其实例(表单A),并为gridview绑定调用表单A的相同绑定方法。