Предполагается, что это WinForms:
Во-первых, при вызове окна «Добавить» используйте ShowDialog () вместо Show ()
В основной форме с DataGrid код будет выглядеть как
private void btnAdd_Click(Object sender, EventArgs e)
{
DialogResult b = frmAdd.ShowDialog();
if(b == DialogResult.Ok)
{
// code to re-bind the grid here.
}
}
в форме frmAdd, вам нужно будет сделать так, чтобы ваша кнопка Сохранить установила DialogResult для формы в DialogResult.Ok после обновления базы данных.
Я предполагаю, что вы пытались сделать следующее:
private void btnAdd_Click (Отправитель объекта, EventArgs e)
{
frmAdd.ShowDialog ();
// код для повторной привязки сетки здесь.
}
Разница в том, что при вызове ShowDialog () основная форма будет ждать, пока форма "add" не закроется, чтобы продолжить выполнение. Во втором примере кода, использующем только Show (), код для повторного связывания сетки происходит сразу после отображения формы «Добавить», прежде чем пользователь получит возможность обновить данные.
(обратите внимание, я сделал этот код на макушке, а не в Visual Studio, поэтому в нем могут быть ошибки)