Atualizar DataGridView após o fechamento do formulário filho
Eu sei que muitas perguntas semelhantes estão por aí. Mas, como eu sou novo em C #, não consigo descobrir como resolver isso.
eu tenho umDataGridView
no formulário principal e eu tenho uma caixa de diálogo para adicionar novo registro. Então, o que eu quero é recarregar / atualizar oDataGridView
no formulário principal quando a caixa de diálogo é fechada. (PressioneSalve botão na caixa de diálogo).
Então, eu tenho um método público no formulário principal como este, que carrego dados usando este método:
public void UpdateProductsList()
{
String query = "SELECT * FROM product";
con = new SqlConnection(conString);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter(query, con);
DataTable dt = new DataTable();
sda.Fill(dt);
dataGridView1.DataSource = dt;
}
Eu uso esse código para abrir o formulário filho:
private void AddProductButton_Click(object sender, EventArgs e)
{
Add_product obj = new Add_product();
obj.ShowDialog();
}
Agora eu chamo esse método no formulário Filho quando o botão Salvar é clicado.
private void SaveProductButton_Click(object sender, EventArgs e)
{
SaveProduct();
Products products = new Products();
products.UpdateProductsList();
}
No entanto, isso não está funcionando quando o botão Salvar é clicado. O estranho é que, quando adiciono esse método a um botão local no formulário principal, ele funciona sem problemas.
Eu também adicionei umMessageBox
paraUpdateProductsList
e tenho certeza de que foi chamado, também os dados foram inseridos no banco de dados, mas oDataGridView
não mostra novo registro.
Então, onde eu errei?