条件が満たされるまでグループボックスを印刷する必要がある for ループ内で印刷しようとしています。
//コード:
private void btnPrint_Click(object sender, EventArgs e)
{
for (int i = 1; i <= Convert.ToInt32(lblTotalBox.Text); i++)
{
lblBoxNumber.Text = i.ToString();
printDocument1.Print();
}
}
private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
PaperSize paperSize = new PaperSize("MyCustomSize", 100, 65);
paperSize.RawKind = (int)PaperKind.Custom;
printDocument1.DefaultPageSettings.PaperSize = paperSize;
using (Graphics g = e.Graphics)
{
using (new Font("Arial", 16))
{
float x = new float();
float y = new float();
x = e.MarginBounds.Left;
y = e.MarginBounds.Top;
Bitmap bmp = new Bitmap(350, 400);
grpReceipt.DrawToBitmap(bmp, new Rectangle(0, 0, 350, 400));
e.Graphics.DrawImage(bmp, x, y);
}
}
}
フォーム画像:
上記のコードを実行しようとすると、エラーは発生しませんが、最初の印刷は正常に機能し、他のすべては空です。
どこが間違っていますか?