新聞中心
這里有您想知道的互聯網營銷解決方案
C#打印分頁中的HasMorePages用法
對于HasMorePages,從字面上理解就是多頁打印,也就是實現C#打印分頁。在很多時候,由于參數設定錯誤,很容易出現new PointF(10.0, 30.0)部分報錯的現象。這里需要謹慎對待。

金牛網站建設公司創(chuàng)新互聯公司,金牛網站設計制作,有大型網站制作公司豐富經驗。已為金牛近1000家提供企業(yè)網站建設服務。企業(yè)網站搭建\外貿營銷網站建設要多少錢,請找那個售后服務好的金牛做網站的公司定做!
HasMorePages的作用很容易產生誤解,但也很好理解:當PrintPage函數執(zhí)行完后,如果HasMorePages==true,則重新執(zhí)行一遍PrintPage這個函數。只要明白了這一點,打印分頁就很簡單了。
在打印時,可以把打印位置保存下來,以便于第二次執(zhí)行PrintPage時知道從哪開始打印。例如,下面這段程序用來打印一個DataTable中有所有數據,每頁打印一條:
C#打印分頁代碼
- class Print
- {
- public partial class NoticePrinter : Form
- {
- PrintDialog _printDialog;
- PrintDocument _printDocument;
- DataTable _table;
- int _curRow;
- //在執(zhí)行這個函數之前,先要把_curRow初始化為0;
- //當HasMorePages==true時,這個函數會重復執(zhí)行,直到HasMorePages==fasle為止;
- void _printDocument_PrintPage(object sender, PrintPageEventArgs e)
- {
- DataRow row;
- string name;
- string sex;
- row = _table.Rows[_curRow];
- name = row["xm"].ToString().Trim();
- sex = row["xb"].ToString().Trim();
- Font font = new Font("宋休", 12);
- e.Graphics.DrawString(name, font, Brushes.Black, new PointF(10.0, 10.0));
- e.Graphics.DrawString(sex, font, Brushes.Black, new PointF(10.0, 30.0));
- _curRow++;
- if (_curPage == _table.Rows.Count)
- {
- e.HasMorePages = false;
- }
- else
- {
- e.HasMorePages = true;
- }
- }
- }
- }
當前題目:C#打印分頁中的HasMorePages用法
當前鏈接:http://m.5511xx.com/article/cdjooss.html


咨詢
建站咨詢
