08/05/20 9:42
nessuno
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
08/05/20 11:37
Carlo
Close, chiude l'oggetto ma non libera le risorse, e l'oggetto può essere riaperto.
Dispose, chiude l'oggetto e libera le risorse, l'oggetto non può essere riaperto, deve essere ricreato.
metti un Button1 in Form1 e prova questo codice con Close:
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Close()
End Sub
Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Me.Text = "Close" : Me.Refresh()
System.Threading.Thread.Sleep(2000)
End Sub
End Class
Quando clicchi Button1, nella barra del titolo appare Close e dopo due secondi il form si chiude.
se cambi Close con Dispose:
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Dispose()
End Sub
Private Sub Form1_FormClosing(sender As Object, e As FormClosingEventArgs) Handles Me.FormClosing
Me.Text = "Close" : Me.Refresh()
System.Threading.Thread.Sleep(2000)
End Sub
End Class
il Form si chiude immediatamente, perché distrutto da Dispose.
Ultima modifica effettuata da Carlo 08/05/20 12:04
in programmazione tutto è permesso
08/05/20 12:20
Carlo
Postato originariamente da alip1:
Vale anche quando si usa ad esempio using connection ... o using command dopo end using é bene fare command.dispose e connection.dispose?? visto che entrambi vengono di volta in volta rigenerati?? Grazie
Dipende da quando esegui l'istruzione.
END USING, libera tutte le risorse impegnate dall'USING corrispondente.
se fai
Using connection As ....
....
....
....
End Using
' non potrai fare in coda
connection.Dispose()
perché l'oggetto connection non esiste più.
Ultima modifica effettuata da Carlo 08/05/20 12:26
in programmazione tutto è permesso