0
모두에게 좋은 날, 직원의 일일 시간 기록에 대한 보고서를 만드는 응용 프로그램이 있습니다. 인쇄 미리보기 대화 상자의 모든 페이지가 인쇄 할 때 사용할 수있는 모든 페이지를 덮어 쓰는 것이 문제입니다. 어떻게 이런 종류의 문제를 해결할 수 있을까요? 페이지 1의 내용은 페이지 1 용이고 페이지 2는 페이지 2 용이고 내용은 반대입니다. 이 다음은 인쇄에 대한 내 코드입니다 :C# 인쇄 할 때 이전 페이지 덮어 쓰기
private void simpleButtonOk_Click(object sender, EventArgs e)
{
try
{
countPage = 0;
CoolPrintPreviewDialog printPreview = new CoolPrintPreviewDialog();
PrintDocument doc = new PrintDocument();
doc.PrintPage += new PrintPageEventHandler(doc_PrintPage);
printPreview.Document = doc;
Form p = (Form)printPreview;
p.WindowState = FormWindowState.Maximized;
p.ShowDialog();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
void doc_PrintPage(object sender, PrintPageEventArgs e)
{
try
{
for (int i = 1; i <= countEmployee; i++)
{
Font fontName = new Font("Calibri", 12, FontStyle.Bold);
Font fontPosition = new Font("Calibri", 12, FontStyle.Regular);
Brush colorBrush = new SolidBrush(Color.Black);
e.Graphics.DrawString(empName, fontName, colorBrush, new Point(80, 120));
e.Graphics.DrawString(empPosition, fontPosition, colorBrush, new Point(80, 140));
e.Graphics.DrawString(empId, fontPosition, colorBrush, new Point(680, 120));
DataManipulation.PrintSelectEmployeeByMonth(i, e, comboBoxMonth, comboBoxYear, comboBoxDayFrom, comboBoxDayTo);
countPage++;
MessageBox.Show(countPage.ToString());
}
if (countPage <= countEmployee)
{
e.HasMorePages = true;
}
else
{
e.HasMorePages = false;
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
도움 주셔서 감사합니다. :) – Sephiroth111