doch noch zu groß
Private Sub PD_BeginPrint(ByVal sender As Object, ByVal e As _
Printing.PrintEventArgs) Handles PD.BeginPrint
DruckSeite = 0
End Sub
Private Sub PD_PrintPage(ByVal sender As Object, ByVal e As _
PrintPageEventArgs) Handles PD.PrintPage
DruckSeite += 1
Dim ZellBox As New RectangleF
Dim sf As StringFormat = StringFormat.GenericTypographic
Dim MaxZeilenIndex, MaxSpaltenIndex As Integer
Dim PosX, PosY, TextHöhe As Single
Dim ZellInhalt As String = String.Empty
Dim Titel_Font As Font = New System.Drawing.Font("Tahoma", 10.25!, _
System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Dim Titel_FontK As Font = New System.Drawing.Font("Tahoma", 8.25!, _
System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Dim DGV_Font As Font = New System.Drawing.Font("Tahoma", 8.25!, _
System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Dim DGV_Font_K As Font = New System.Drawing.Font("Arial Narrow", 8.25!, _
System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, _
CType(0, Byte))
Dim Status_Font As Font = New System.Drawing.Font("Wingdings", 12.25!, _
System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, _
CType(2, Byte))
Dim HeaderColor As System.Drawing.Color = Color.LightGray
e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
e.Graphics.TextRenderingHint = _
System.Drawing.Text.TextRenderingHint.AntiAlias
e.Graphics.PageUnit = GraphicsUnit.Display
PosY = rect_Druckbereich.Top
PosX = rect_Druckbereich.Left
TextHöhe = e.Graphics.MeasureString("[Bg", Titel_Font).Height '
' Mustertext zur Ermittlung der Schrifthöhe
ZellBox = New RectangleF(rect_Druckbereich.Left, rect_Druckbereich.Top, _
rect_Druckbereich.Width, TextHöhe)
'Titel & Druckdatum & Seite
If DruckSeite = 1 Then
sf.Alignment = StringAlignment.Near
sf.LineAlignment = StringAlignment.Far
e.Graphics.DrawString(String.Concat("erbru-übersicht"), Titel_Font, _
Brushes.Black, ZellBox, sf)
End If
If DruckSeite >= 1 Then
sf.Alignment = StringAlignment.Center
sf.LineAlignment = StringAlignment.Far
e.Graphics.DrawString(String.Concat("erbru-Status: ", DatenAbruf), _
Titel_FontK, Brushes.Black, ZellBox, sf)
sf.Alignment = StringAlignment.Far
sf.LineAlignment = StringAlignment.Far
e.Graphics.DrawString("Seite: " & DruckSeite, DGV_Font, _
Brushes.Black, ZellBox, sf)
End If
PosX = rect_Druckbereich.Left
PosY += ZellBox.Height + 6
sf.Alignment = StringAlignment.Center
sf.LineAlignment = StringAlignment.Center
'Spaltenköpfe drucken
DruckSpalte = 0
TextHöhe = e.Graphics.MeasureString("[Bg", DGV_Font).Height + 3 '
' Mustertext zur Ermittlung der Schrifthöhe
Dim lst_Header As New List(Of String) From {"ID", "Seriennummer", _
"Bauteil", "Baudatum", "Status"}
'Den höchsten ZeilenIndex und SpaltenIndex der Datensätze ermitteln
MaxZeilenIndex = ZeilenHoehen.Count - 1
MaxSpaltenIndex = lst_Header.Count - 1
den Rest den ich noch sende bitte ab hier anhängen |