Private Sub PrintTextControl_PrintPage(ByVal sender As System.Object, _
ByVal e As System.Drawing.Printing.PrintPageEventArgs)_
Handles PrintTextControl.PrintPage
PrintTextControl.DocumentName = "Test Document"
Dim PrintFont As New Font(TextToPrint.Font, TextToPrint.Font.Style)
Dim numChars As Integer
Dim numLines As Integer
Dim stringForPage As String
Dim strFormat As New StringFormat
Dim rectDraw As New RectangleF(e.MarginBounds.Left, _
e.MarginBounds.Top, e.MarginBounds.Width, e.MarginBounds.Height)
Dim sizeMeasure As New SizeF(e.MarginBounds.Width, _
e.MarginBounds.Height - PrintFont.GetHeight(e.Graphics))
strFormat.Trimming = StringTrimming.Word
e.Graphics.MeasureString(PrintString, PrintFont, sizeMeasure, _
strFormat, numChars, numLines)
stringForPage = PrintString.Substring(0, numChars)
e.Graphics.DrawString(stringForPage, PrintFont, Brushes.Black, rectDraw, strFormat)
If numChars < PrintString.Length Then
PrintString = PrintString.Substring(numChars)
e.HasMorePages = True
Else
e.HasMorePages = False
PrintString = TextToPrint.Text
End If
End Sub