Jak rozszerzyć metodę Dispose WinForma?
Otrzymuję to ostrzeżenie od FxCop:
„RestartForm” zawiera pole „RestartForm.done”, które jest typu IDisposable: „ManualResetEvent”. Zmień metodę Dispose na „RestartForm”, aby wywołać Dispose lub Close na tym polu. ”
Ok, rozumiem, co to znaczy i dlaczego to musi być zrobione ... Z wyjątkiemSystem.Windows.Forms.Form
nie pozwala także na nadpisanie.Close()
lub.Dispose()
, więc co robić? Obecnie korzystam z tego rozwiązania:
<code> private void RestartForm_FormClosing(object sender, FormClosingEventArgs e) { done.Set(); done.Close(); } </code>
Który działa zgodnie z przeznaczeniem dla mojej aplikacji ... Ale FxCop nadal pokazuje ten komunikat. Czy jestem zakryty i czy mogę go zignorować, czy może powinienem to zrobić w inny sposób?