' ***** Zeileninhalte drucken
DruckZeile = 0
PosX = LRand
PosY = ROben + TextHöhe
Do
DruckSpalte = 0
Do
ZellInhalt = race_grid.Rows(DruckZeile + _
DGVZeilenIndex).Cells(DruckSpalte).Value
ZellBox = New Rectangle(PosX, PosY, SpaltenBreiten( _
DruckSpalte), TextHöhe)
If race_grid.Columns( _
DruckSpalte).DefaultCellStyle.Format.ToString <> _
String.Empty Then
ZellInhalt = CDbl(ZellInhalt).ToString( _
race_grid.Columns( _
DruckSpalte).DefaultCellStyle.Format.ToString)
End If
If (DGVZeilenIndex + DruckZeile) Mod 2 = 0 Then ' Zeilen
' abwechselnd einfärben
e.Graphics.FillRectangle(New SolidBrush(RowColor), _
ZellBox)
Else
e.Graphics.FillRectangle(New SolidBrush( _
RowColorAlternate), ZellBox)
End If
If DruckeGitternetzlinien = True Then
e.Graphics.DrawRectangle(Pens.Black, ZellBox.X, _
ZellBox.Y, ZellBox.Width, ZellBox.Height)
End If
Select Case race_grid.Columns( _
DruckSpalte).DefaultCellStyle.Alignment.ToString
Case "NotSet", "MiddleLeft"
ZellBox = New Rectangle(PosX, PosY, SpaltenBreiten( _
DruckSpalte), TextHöhe)
Case "MiddleRight"
PosX1 = PosX + SpaltenBreiten(DruckSpalte) - ( _
g.MeasureString(ZellInhalt, race_grid.Font).Width)
ZellBox = New Rectangle(PosX1, PosY, SpaltenBreiten( _
DruckSpalte), TextHöhe)
Case "MiddleCenter"
PosX1 = PosX + (SpaltenBreiten(DruckSpalte) / 2) - ( _
g.MeasureString(ZellInhalt, race_grid.Font).Width _
/ 2)
ZellBox = New Rectangle(PosX1, PosY, SpaltenBreiten( _
DruckSpalte), TextHöhe)
Case Else
ZellBox = New Rectangle(PosX, PosY, SpaltenBreiten( _
DruckSpalte), TextHöhe)
End Select
e.Graphics.DrawString(ZellInhalt, race_grid.Font, _
Brushes.Black, ZellBox, sf)
PosX += SpaltenBreiten(DruckSpalte)
DruckSpalte += 1
Loop Until (DruckSpalte > dgv_MaxSpaltenIndex)
PosX = LRand
PosY += TextHöhe
DruckZeile += 1
Loop Until ((DruckZeile + DGVZeilenIndex) > (dgv_MaxZeilenIndex)) _
OrElse ((PageHeight + ROben) < PosY + _
TextHöhe)
If (DruckZeile + DGVZeilenIndex) > (dgv_MaxZeilenIndex) Then
e.HasMorePages = False
DGVZeilenIndex = 0
DruckSpalte = 0
DruckZeile = 0
Exit Sub
Else
e.HasMorePages = True
DGVZeilenIndex = DruckZeile + DGVZeilenIndex
Exit Sub
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler", MessageBoxButtons.OK, _
MessageBoxIcon.Error)
End Try
End Sub Rechtschreibfehler sind mein Copyright(C) |