Обновить на элементах управления winform перерисовывает сам элемент управления.Я считаю полезным создать метод, который просто загружает мои элементы управления с соответствующими данными, а затем вызывает его по мере необходимости.(Включая загрузку формы)
private void ResetData()
{
//code to update settings
}
Если вы показываете форму, которая закрывается в виде диалога, вы также можете воспользоваться этим и проверить состояние диалогового окна, а не просто открывать его.
Form2 dlg = new Form2();
if (dlg.ShowDialog == System.Windows.Forms.DialogResult.OK) {
//code that updates your data
ResetData();
}
Если это не диалог, есть несколько вещей, которые вы можете сделать, и то, как ваше приложение работает, сделает один метод лучше других.Вот только один пример.
Если для ваших изменений вам не нужен доступ к данным из другого окна для обновления, вы можете обработать закрытое событие формы, которую вы создаете.
Создатьпеременная уровня класса для хранения открытой формы, так что вы также можете удалить созданные вами обработчики событий:
private Form2 frm;
Чтобы создать экземпляр формы и добавить обработчик события закрытия:
frm = new Form2();
frm.FormClosed += OnForm2Closed;
Метод обработчика событий:
private void OnForm2Closed(object sender, FormClosedEventArgs e)
{
ResetData();
frm.FormClosed -= OnForm2Closed;
}