Форма диалога WinForms - закрыть или удалить?

Я унаследовал некоторый код и хотел запустить эту модификацию всеми вами, моя задача - управление памятью.

Допустим, у меня есть «базовая» форма с кучей кнопок, которые открывают «диалоговые» формы. Какой шаблон рекомендуется использовать для открытия диалоговых форм? В настоящее время мы отображаем форму «диалога» следующим образом (в «базовом» коде формы после нажатия кнопки):

ChangePasswordForm frm = new ChangePasswordForm();
frm.ShowDialog();

Затем закройте его так (в коде формы «диалог»):

private void bCancel_Click(object sender, EventArgs e)
{
  this.Close();
  //this.Dispose();  <-- this is what I am considering adding.
}

Мое обоснование для добавления Dispose заключается в том, что я беспокоюсь, если эта форма отображается и закрывается много раз, что каждый разновый экземпляр формы создан, и его ресурсы никогда не освобождаются - это правильно? Кроме того, если форма имеет «закрытый» X в правом верхнем углу, должен ли я также помещать вызов Dispose () в событие FormClosed?

Заранее спасибо.

Ответы на вопрос(2)

Ваш ответ на вопрос