puoi usare l'oggetto printDialog e printDocument
nell'evento PrintPage dell'oggetto printDocument puoi scrivere:
codice:
Private Sub PrintDocument_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument.PrintPage
Dim myFont As New System.Drawing.Font("Arial", 9)
Dim myFormat As New Drawing.StringFormat()
myFormat.FormatFlags = Drawing.StringFormatFlags.DirectionRightToLeft
e.Graphics.DrawRectangle(New Drawing.Pen(Drawing.Brushes.Black), 100, 100, 627, 25)
e.Graphics.DrawString("Ciao Mondo!", myFont, Drawing.Brushes.Black, 105, 105)
End Sub
e poi nella tua routine di stampa, dopo aver impostato l'oggetto PrintDocument nella proprietà Document dell'oggetto PrintDialog:
codice:
Private Sub LanciaStampa
With Me.PrintDialog
If .ShowDialog = Windows.Forms.DialogResult.OK Then
.Document.Print()
End If
End With
che ti richiama la stampa del Documet che viene creato ogni volta che scatta l'evento PrintPage
controllati questa classe:
System.Drawing.Printing.PrintPageEventArgs
in modo tale da personalizzare il documento
In ogni caso dai un'pcchiata al Crystal Report che trovi embedded nell'IDE visto che è abbastanza meno macchinoso rispetto all'oggetto PrintDocument