imprimir printdocument
Publicado por bingsiu (12 intervenciones) el 05/03/2010 23:22:44
Estoy imprimiendo un gridview en vb.net 2005, el problema es que solo me imprime 1 hoja y son tres, alguien me podria revisar este codigo a ver que estoy haciendo mal. muchas gracias.
Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
Dim linesPerPage As Single = 0
Dim yPos As Single = 0
Dim leftMargin As Single = 30
Dim topMargin As Single = e.MarginBounds.Top - 30
Dim line As String = Nothing
linesPerPage = e.MarginBounds.Height / printFont.GetHeight(e.Graphics)
Dim Fil, Col As Int32
Dim LString As String = ""
LString = LString & "ESCUELA " & vbCrLf & vbCrLf '& vbCrLf & vbCrLf
LString = LString & " REPORTE DE ESTUDIANTES ACTIVOS " & vbCrLf & vbCrLf '& vbCrLf & vbCrLf
LString = LString & " Fechas:" & " -- " & " Del " & " -- " & Me.Txdate1.Text & vbCrLf & vbCrLf '& " -- " & " al " & " -- " & Me.Txdate2.Text & vbCrLf & vbCrLf '& vbCrLf"
LString = LString & " Total " & " " & Me.Txtotal.Text & vbCrLf & _
"------------------------------------------------------------------------------------------------" & vbCrLf & vbCrLf
count = 0
For Fil = 0 To Me.DGridView1.Rows.Count - 1
For Col = 0 To Me.DGridView1.Columns.Count - 1
Call RellenarEsp(Me.DGridView1.Item(Col, Fil).Value, Fil)
LString = LString & ncadena & Space(3)
Next
count += 1
LString = LString & vbCrLf
Next
yPos = topMargin + (count * printFont.GetHeight(e.Graphics))
e.Graphics.DrawString(LString, New Font("arial", 9, FontStyle.Regular), Brushes.Black, 100, 80)
If Not (line Is Nothing) Then
e.HasMorePages = True
Else
e.HasMorePages = False
End If
End Sub
Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
Dim linesPerPage As Single = 0
Dim yPos As Single = 0
Dim leftMargin As Single = 30
Dim topMargin As Single = e.MarginBounds.Top - 30
Dim line As String = Nothing
linesPerPage = e.MarginBounds.Height / printFont.GetHeight(e.Graphics)
Dim Fil, Col As Int32
Dim LString As String = ""
LString = LString & "ESCUELA " & vbCrLf & vbCrLf '& vbCrLf & vbCrLf
LString = LString & " REPORTE DE ESTUDIANTES ACTIVOS " & vbCrLf & vbCrLf '& vbCrLf & vbCrLf
LString = LString & " Fechas:" & " -- " & " Del " & " -- " & Me.Txdate1.Text & vbCrLf & vbCrLf '& " -- " & " al " & " -- " & Me.Txdate2.Text & vbCrLf & vbCrLf '& vbCrLf"
LString = LString & " Total " & " " & Me.Txtotal.Text & vbCrLf & _
"------------------------------------------------------------------------------------------------" & vbCrLf & vbCrLf
count = 0
For Fil = 0 To Me.DGridView1.Rows.Count - 1
For Col = 0 To Me.DGridView1.Columns.Count - 1
Call RellenarEsp(Me.DGridView1.Item(Col, Fil).Value, Fil)
LString = LString & ncadena & Space(3)
Next
count += 1
LString = LString & vbCrLf
Next
yPos = topMargin + (count * printFont.GetHeight(e.Graphics))
e.Graphics.DrawString(LString, New Font("arial", 9, FontStyle.Regular), Brushes.Black, 100, 80)
If Not (line Is Nothing) Then
e.HasMorePages = True
Else
e.HasMorePages = False
End If
End Sub
Valora esta pregunta


0