C#Winformsアプリケーションを使用して何かを印刷しようとしています。複数のページがどのように機能するのか理解できないようです。コンストラクターに次のコードがあるとしましょう。
private string _stringToPrint;
_stringToPrint = "";
for (int i = 0; i < 120; i++)
{
_stringToPrint = _stringToPrint + "Line " + i.ToString() + Environment.NewLine;
}
次に、ボタンクリックイベントに次のコードがあります。
private void MnuFilePrintClick(object sender, EventArgs e)
{
var pd = new PrintDocument();
pd.PrintPage += pd_PrintPage;
var z = new PrintPreviewDialog { Document = pd };
z.ShowDialog(this);
}
void pd_PrintPage(object sender, PrintPageEventArgs e)
{
Graphics g = e.Graphics;
var font = new Font("Arial", 10f, FontStyle.Regular);
g.DrawString(_stringToPrint, font, Brushes.Black, new PointF(10f, 10f));
}
現在、このコードを実行すると、1ページが表示され、70行ほど経過すると、紙切れになります。この文字列を1ページに十分に印刷してから、2ページ目に移動するようにするにはどうすればよいですか?