Hiho,
ich hab ein kleines Problem mit Drucken von mehreren Seiten. Ich habe schon einiges gegoogled, aber komme trotzdem leider nicht weiter.
Ich weiss das ich dem PrintPageEventArgs mit HasMorePages=true sagen muss das es noch mehr Seiten gibt. Irgendwann muss ich dem Event auch noch sagen gibt keine weiteren Seiten. (Sonst druckt er die erste Seite seeehr oft )
Ich hoff soweit bin ich richtig.
Ich habe, auch hier im Forum, Code gesehen wie man mit einer While-Schleife die Sache mit HasMorePages regelt.
Ich hole meine Daten die ich Drucken möchte aus einer ListView, ich bekomme es aber nicht hin das ich mehrere Seiten ausdrucken kann.
Kann mir jemand sagen wo ich die Sache mit HasMorePages in meinem Code einsetzen muss das es hinhaut? (Wenn es in dem Fall überhaupt geht)
ich hab ein kleines Problem mit Drucken von mehreren Seiten. Ich habe schon einiges gegoogled, aber komme trotzdem leider nicht weiter.
Ich weiss das ich dem PrintPageEventArgs mit HasMorePages=true sagen muss das es noch mehr Seiten gibt. Irgendwann muss ich dem Event auch noch sagen gibt keine weiteren Seiten. (Sonst druckt er die erste Seite seeehr oft )
Ich hoff soweit bin ich richtig.
Ich habe, auch hier im Forum, Code gesehen wie man mit einer While-Schleife die Sache mit HasMorePages regelt.
Ich hole meine Daten die ich Drucken möchte aus einer ListView, ich bekomme es aber nicht hin das ich mehrere Seiten ausdrucken kann.
Kann mir jemand sagen wo ich die Sache mit HasMorePages in meinem Code einsetzen muss das es hinhaut? (Wenn es in dem Fall überhaupt geht)
Code:
private void printDocument1_PrintPage(object sender, PrintPageEventArgs e) { Pen pen = new Pen(Color.Black); Font font = new Font("Arial", 14); if (this.monthCalendar1.SelectionStart.ToShortDateString() != this.monthCalendar1.SelectionEnd.ToShortDateString()) { string title = "Ausgaben vom: " + this.monthCalendar1.SelectionStart.ToShortDateString() + " - " + this.monthCalendar1.SelectionEnd.ToShortDateString(); e.Graphics.DrawString(title, font, Brushes.Black, 35, 25); e.Graphics.DrawLine(pen, 35, 50, 500, 50); } else { string title = "Ausgaben am: " + this.monthCalendar1.SelectionStart.ToShortDateString(); e.Graphics.DrawString(title, font, Brushes.Black, 35, 25); e.Graphics.DrawLine(pen, 35, 50, 500, 50); } font = new Font("Arial", 11); int k = 0, l = 0; for (int i = 1; i <= Convert.ToInt16(this.listView1.Groups.Count); i++) { l = 0; for (int j = 0; j < (Convert.ToInt16(this.listView1.Items.Count)); j++) { if (this.listView1.Groups[i - 1].ToString() == this.listView1.Items[j].Group.ToString()) { if (l == 0) { font = new Font("Arial", 11, FontStyle.Bold); k = k + 2; e.Graphics.DrawString(this.listView1.Groups[i - 1].ToString(), font, Brushes.Black, 35, 50 + k * 25); e.Graphics.DrawLine(pen, 35, 70 + k * 25, 775, 70 + k * 25); l = 1; k++; } font = new Font("Times New Roman", 11); e.Graphics.DrawString(this.listView1.Items[j].Text.ToString(), font, Brushes.Black, 150, 75 + k * 25); e.Graphics.DrawString(this.listView1.Items[j].SubItems[1].Text.ToString(), font, Brushes.Black, 580, 75 + k * 25); e.Graphics.DrawString(this.listView1.Items[j].SubItems[2].Text.ToString(), font, Brushes.Black, 670, 75 + k * 25); e.Graphics.DrawString(this.listView1.Items[j].SubItems[3].Text.ToString(), font, Brushes.Black, 720, 75 + k * 25); e.Graphics.DrawString(this.listView1.Items[j].SubItems[4].Text.ToString(), font, Brushes.Black, 35, 75 + k * 25); k++; } } } }
Comment