Ciao
m'intrometto!
Secondo me dipende molto da cosa desideri dal tuo grafico!
se vuoi una cosa dinamica che continui ad aggiornarsi secondo tempi, flussi di dati in arrivo o cose del genere è consigliabile disegnare su un controllo (picture box o form) così ogni volta che il controllo viene disegnato ridisegna tutto.
se invece i dati non sono così tanto dinamici come ad esempio una datagrid è meglio disegnare su un'immagine e poi inserire essa all'interno di una picturebox, così l'applicazione sarà più veloce.
Nel primo caso il disegno lo devi creare all'interno dell'evento paint del controllo e l'oggetto graphics ti viene passato come parametro da esso
codice:
Private Sub PictureBox1_Paint(ByVal sender As Object, _
ByVal e As System.Windows.Forms.PaintEventArgs) _
Handles PictureBox1.Paint
Dim superficie As Graphics = e.Graphics
Dim blackPen As New Pen(Color.Black, 3)
...
End Sub
Nel secondo caso devi prima impostare un'immagine con le dimensioni che desideri, e poi su di esso impostare l'oggetto graphics
codice:
Dim tela As New Bitmap(220, 150)
Dim superficie As Graphics = Graphics.FromImage(tela)
Dim blackPen As New Pen(Color.Black, 3)
...