Я получаю это предупреждение от FxCop:Как расширить метод Dispose WinForm?
«„RestartForm“содержит поле„RestartForm.done“, который имеет тип IDisposable:.„“ManualResetEvent Измените метод Dispose на„“RestartForm вызвать Dispose или Close на этом поле ".
Хорошо, я понимаю, что это значит и почему это то, что должно быть сделано ... Кроме System.Windows.Forms.Form
не позволяет переопределить либо .Close()
или .Dispose()
, так что делать? В настоящее время я работаю с этим решением:
private void RestartForm_FormClosing(object sender, FormClosingEventArgs e)
{
done.Set();
done.Close();
}
Что работает для моего приложения ... Но FxCop все еще показывает это сообщение. Я покрыл и могу ли я смело игнорировать его, или есть ли другой способ, которым я должен это делать?
Вы также можете подписаться на Disposed события в конструкторе, если вы не хотите, чтобы коснуться дизайнер сгенерированный код. – arbiter