在打印时,经常用到printPage函数,但是,其中换页打印是令人头痛的问题,经常用了e.HasMorePages = true; 语句之后,所有页面都是重复第一页,因为e.HasMorePages = true是重新调用printDocument1_PrintPage,所以每次调用都是从头开始,才会出现所有页面的内容都一样,下面是自己解决这个问题的一个方法:
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { int index=1; switch (index)//控件打印的页码 { case 1: index++; . . .一页打印完之后 e.HasMorePages = true; break; case 2: index++; . . .一页打印完之后 e.HasMorePages = true; break; case 3: index++; . . .一页打印完之后 e.HasMorePages = true; break; case 4: index++; e.HasMorePages = false; break; . . .
}
}