Salve a tutti:
Ho bisogno di stampare un treeview come componente di un form.
Normalmente utilizzo una serie di procedure per stampare un'immagine:

Private Sub cmdPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdPrint.Click
If Me.txtString.Text = "" Then Exit Sub
dlgPrintPreview.Document = PreparePrintDocument()
'dlgPrintPreview.WindowState = FormWindowState.Maximized

dlgPrintPreview.ShowDialog()
If dlgPrintPreview.ShowDialog = 2 Then Exit Sub

' Creo un oggetto PrintDocument.
Dim print_document As PrintDocument = PreparePrintDocument()

' Invio alla stampante.
print_document.Print()
End Sub

Private Function PreparePrintDocument() As PrintDocument
' Creo un oggetto PrintDocument.
Dim print_document As New PrintDocument

AddHandler print_document.PrintPage, AddressOf Print_PrintPage

' Ritorno l'oggetto.
Return print_document
End Function

Private Sub Print_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs)
Dim imagePrint As Image = PictureBox.Image

e.Graphics.DrawImage(imagePrint, 50, 50, imagePrint.Width, imagePrint.Height)

' Non ci sono altre pagine da stampare.
e.HasMorePages = False
End Sub

... qualcuno può darmi una mano?

Grazie di tutto!