thinzar
thinzar

Reputation: 1550

Refresh DataGridView in Windows form

I have two forms let it be Form A and Form B. When I click save button on Form B I want the DataGridView of Form A to refresh.

Which method should I use?

Upvotes: 3

Views: 7734

Answers (3)

CharithJ
CharithJ

Reputation: 47490

Using a event is one way of doing this. Below is another way which is more object oriented.

Add public Refresh method in FormA.

public void RefreshDataGrid()     
{       
   //Do refresh    
}

Pass the instance of FormA to FormB when constructing FormB. You have to create FormB contructor to take FormA instance.

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

Now you can call FormA.ResfreshGrid() method from FormB.

myFormA.RefreshGrid();

Upvotes: 4

Djole
Djole

Reputation: 1145

implement code in Form A like this:

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

then call this when button is clicked on B

Upvotes: 1

Ovais Khatri
Ovais Khatri

Reputation: 3211

Create a method for binding the gridview, call this method on form load of form A, and if the form is already opened, you have to use its instance (of form A), and call the same binding method of Form A for gridview binding.

Upvotes: 0

Related Questions