Prawidłowy sposób zamykania formy (okienka) w C#.

Prawidłowy sposób zamykania formy (okienka) w C#.
  • Rejestracja: dni
  • Ostatnio: dni
0

Cześć, to znowu ja.
Chciałbym się dowiedzieć czy prawidłowo zamykam okienko (zwalnianie wszelkich zasobów (RAM) etc.).
Robię to w taki sposób:

Kopiuj
using (FormPassword passForm = new FormPassword())
{
    passForm.ShowDialog();
}

Jest jakiś lepszy sposób?

Myślałem też nad tym:

Kopiuj
FormPassword passForm = new FormPassword();
passForm.ShowDialog();
passForm.Close();
passForm.Dispose();

Pozdro.

unikalna_nazwa
  • Rejestracja: dni
  • Ostatnio: dni
1

po to jest garbage collector żebyś sobie główki zbytnio nie zaprzątał ;)

po co Close()? przecież skoro to dialog modalny to przy tej instrukcji już będzie zamknięty
using automatycznie wywołuje Dispose() więc oba kody są równoważne

a dokładniej:

Kopiuj
using (MyResource myRes = new MyResource())
{
    myRes.DoSomething();

}

gets translated to,

Kopiuj
MyResource myRes= new MyResource();
try
{
    myRes.DoSomething();
}
finally
{
    // Check for a null resource.
    if (myRes!= null)
        // Call the object's Dispose method.
        ((IDisposable)myRes).Dispose();
}
  • Rejestracja: dni
  • Ostatnio: dni
0

Ok, dzięki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.