C#编程-137:PrintPreviewControl打印预览控件

C#编程-137:PrintPreviewControl打印预览控件

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9.  
  10. namespace PrintPreviewTest
  11. {
  12.     public partial class Form1 : Form
  13.     {
  14.         public Form1()
  15.         {
  16.             InitializeComponent();
  17.         }
  18.  
  19.         private void Form1_Load(object sender, EventArgs e)
  20.         {
  21.             printPreviewControl1.Visible = false;
  22.             btnCancel.Enabled = false;
  23.         }
  24.  
  25.         private void btnPreview_Click(object sender, EventArgs e)
  26.         {
  27.             try
  28.             {
  29.                 printPreviewControl1.Document = printDocument1;
  30.                 printPreviewControl1.Visible = true;
  31.                 btnCancel.Enabled = true;
  32.                 btnPreview.Enabled = false;
  33.             }
  34.             catch (Exception ex)
  35.             {
  36.  
  37.                 MessageBox.Show(ex.Message,"预览出错",MessageBoxButtons.OK,MessageBoxIcon.Error);
  38.             }
  39.         }
  40.  
  41.         private void btnCancel_Click(object sender, EventArgs e)
  42.         {
  43.             printPreviewControl1.Visible = false;
  44.             btnCancel.Enabled = false;
  45.             btnPreview.Enabled = true;
  46.         }
  47.  
  48.         private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
  49.         {
  50.             int x = e.PageBounds.Left+10;
  51.             int y = e.PageBounds.Top+50;
  52.             Graphics g = e.Graphics;
  53.             Font font = new Font("黑体",100);
  54.             SolidBrush brush = new SolidBrush(Color.Green);
  55.             string text="此处输入需要打印的内容";
  56.             g.DrawString(text,font,brush,x,y);
  57.         }
  58.     }
  59. }