木子屋 Dnawo's BLOG

WinForm打印多页示例

👤 dnawo 📅 2014-09-02 👁 4257 👍 0 💬 0 🔄 本站原创
using System;
using System.Drawing;
using System.Drawing.Printing;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        private PrintDocument printDocument1; //PrintDocument
        private int pagenow = 0; //已打印页数
        private int papercount = 3; //打印总页数

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            printDocument1 = new PrintDocument();
            printDocument1.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
        }

        /// <summary>
        /// 开始打印
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            pagenow = 0;
            printDocument1.Print();
        }

        /// <summary>
        /// 打印
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
        {
            pagenow++;

            Font font = new Font("宋体", 12);
            Brush brush = Brushes.Black;
            e.Graphics.DrawString(string.Format("{0}\r\n\r\n第{1}页", "木子屋 - http://www.mzwu.com/", pagenow), font, brush, 10, 10);
            e.HasMorePages = pagenow < papercount; //这句是关键
        }
    }
}

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 POS58票据打印机走纸测试 下一篇 → WinForm使用单例模式打开窗体示例