Avatar billede ghorfraq Nybegynder
20. januar 2004 - 12:21 Der er 4 kommentarer og
2 løsninger

nedlukning af form

Er det muligt, når man lukker en windows form ved at trykke kryds i højre hjørne, at fange denne hændelse, så man kan eksekvere egen kode inden processen lukkes?
En event eller lign........ måske
Avatar billede z42cool Nybegynder
20. januar 2004 - 12:29 #1
Ja, du kan bruge System.Windows.Forms.Application.ApplicationExit eventet
Avatar billede ghorfraq Nybegynder
20. januar 2004 - 12:31 #2
jeg benytter mig osse af modal forme internt i applikationen. Skal jeg bruge dispose eventen til det i den situation?
Avatar billede driis Nybegynder
20. januar 2004 - 12:42 #3
Du kan bruge Form.Closing eventet, eks:

private void Form1_Closing(object sender, CancelEventArgs e)
        {
            DialogResult res = MessageBox.Show("Luk form ?","Closing event",
                MessageBoxButtons.YesNo,MessageBoxIcon.Question);
            if ( res == DialogResult.No )
                e.Cancel = true;
        }
Avatar billede ghorfraq Nybegynder
20. januar 2004 - 12:44 #4
jeg leger lidt med det. Deler pointene
Avatar billede clausc Nybegynder
20. januar 2004 - 14:04 #5
ghorfrag:
Du ved i pricippet ikke hvornår Dispose bliver kaldt, pga GarbageCollection; så den event skal bruges med nogen omtanke.

Tilsvarende må du ikke tilgå andre managed objekter i Dispose, netop fordi de når Dispose bliver kaldt ikke nødvendigvis findes længere.
Avatar billede ghorfraq Nybegynder
20. januar 2004 - 14:10 #6
jeg takker for oplysningen. Umiddelbart virker det fint. Jeg skal bare lukke en forbindelse til en database. Og dette lader sig gøre ved at fange hændelsen på følgende måde:
  this.Closing += new System.ComponentModel.CancelEventHandler(this.formClosing);
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester