在c#中的每个打印页面中打印一个页码

Pau*_*ulD 2 c# printing graphics winforms

我是在 c# 中使用 printdocument 功能的新手,需要一些帮助。我需要在打印机打印的每一页上打印一个页眉,我需要页码。

我目前正在使用一个字符串,将它连接起来,然后在 printDocument_PrintPage 方法中逐行打印它。我想将一个变量连接到我打印的字符串,以跟踪其正在打印的页码。

这可能吗?到目前为止,这是我调用 printpage 方法的代码:

    printDialog1.Document = printDocument1;

    if (printDialog1.ShowDialog() == DialogResult.OK)
        this.printDocument1.Print();
Run Code Online (Sandbox Code Playgroud)

Pau*_*sik 5

是的。只需在将处理打印事件的类中创建一个页面计数器字段。就像是:

private int _pageCount = 1;
Run Code Online (Sandbox Code Playgroud)

在您的打印页面处理程序中,只需将其附加到您的标题字符串,然后在退出处理程序之前将其递增。就像是:

private void PrintPageEventHandler(...
{
     string pageHeader = "Page # " + pageCount;

     //  printing code here

     pageCount++;
}
Run Code Online (Sandbox Code Playgroud)