Mehrere Seiten drucken mit dem printdocument

Ich mache Programm, das: Nachdem Sie einige Zeilen im datagridview-es wird überprüft ob 1 oder mehr gewählt wurde. Wenn man, drucken Sie zwei Kopien des Berichts auf einer Seite(Bericht = halbe Seite), Wenn mehr: Print-zwei Berichte pro Seite, Druck so viel wie nötig-Seiten. Problem ist, mein code druckt 4531456453 Seiten der gleiche Bericht(erste und zweite Zeile) :/

Basic-Beispiel-code:

yPos = 0
Do While tmpI < mydatagridview.SelectedRows.Count - 1
For Each selectedrow As DataGridViewRow In mydatagridview.SelectedRows
    Dim data as string = mydatagridview.SelectedRows(selectedrow.index).cells(1).value
    Dim data2 as string = mydatagridview.SelectedRows(selectedrow.index).cells(12).value

    e.graphics.drawstring(data, drawfont, (e.graphics.pagebound.width/2-e.graphics.measurestring(data, drawfont).width/2), 25+yPos)
    e.graphics.drawstring(data2, drawfont, (e.graphics.pagebound.width/2-e.graphics.measurestring(data2, drawfont).width/2), 50+yPos)
    yPos += e.pagebounds.height/2
    tmpI += 1 
    If yPos > e.pagebound.height/2 Then
        h = 0
        e.HasMorePages = true
        Exit Sub
    End If
Next selecedrow
Loop

Als jetzt, wie ich schon sagte es gibt unendlich viele Seiten mit Daten und data2 von SelectedRows mit Indizes 0 und 1.

Schreibe einen Kommentar