Ciao MItaly e grazie per l'aiuto.
Ergo CreateGraphics non serve quasi a niente...
Un esempio analogo a quello che hai citato l'ho trovato su un manuale, ma veniva risolto usando una collection List (of...) dove ad ogni click del mouse veniva memorizzata la posizione del cursore e richiamato l'evento Paint per disegnare un rettangolo sullo schermo:
codice:
Public Class Form1
Private puntiPB As New List(Of Point)
Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
puntiPB.Add(New Point(e.X, e.Y))
PictureBox1.Invalidate()
End Sub
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
Dim grAs Graphics = e.Graphics
For Each p As Point In puntiPB
gr.DrawRectangle(Pens.DodgerBlue, p.X, p.Y, 20, 30)
Next
End Sub
End Class
Per quale motivo disegnare su una bitmap risolve il problema dell'aggiornamento della form ?
Per la bitmap non vale il probllema della cancellazione al successivo evento Paint?