解决方案 »

  1.   

    没有。
    直接: this.printPreviewDialog1.ShowDialog();  
    参考:http://blog.csdn.net/chen504390172/article/details/38096521
      

  2.   

    先try catch出来,再查查看。是不是你的PC没有配置打印机连接
      

  3.   

    winfrom的推荐你用 datagridview打印控件
    web 推荐你用 lodop
    绝对好用的东东,前段时间我也是纠结打印这块,这两个帮了我大忙了
      

  4.   

    内容放在一个panel上,直接打印方法一:直接打印,不预览
    [csharp] view plaincopy
    01.  Bitmap _NewBitmap = null;  
    02.        public void InitPrint()  
    03.        {  
    04.            _NewBitmap = new Bitmap(panel1.Width, panel1.Height);  
    05.            panel1.DrawToBitmap(_NewBitmap, new Rectangle(0, 0, _NewBitmap.Width, _NewBitmap.Height));  
    06.        }  
    07.  
    08.  
    09. private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)  
    10.        {  
    11.            e.Graphics.DrawImage(_NewBitmap, 0, 0, _NewBitmap.Width, _NewBitmap.Height);  
    12.        }  
    13.        private void button1_Click(object sender, EventArgs e)  
    14.        {  
    15.            InitPrint();           
    16.           StandardPrintController spc = new StandardPrintController();              
    17.          this.printDocument1.PrintController = spc;  
    18.          this.printDocument1.Print();  
    19.        }  
    方法二:打印前先预览
    [csharp] view plaincopy
    01.        Bitmap _NewBitmap = null;  
    02.        public void InitPrint()  
    03.        {  
    04.            _NewBitmap = new Bitmap(panel1.Width, panel1.Height);  
    05.            panel1.DrawToBitmap(_NewBitmap, new Rectangle(0, 0, _NewBitmap.Width, _NewBitmap.Height));  
    06.        }  
    07.  
    08.  
    09.        private void button1_Click(object sender, EventArgs e)  
    10.        {  
    11.            InitPrint();  
    12.            this.printPreviewDialog1.Document = printDocument1;  
    13.            this.printPreviewDialog1.ShowDialog();            
    14.        }  
    15.        private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)  
    16.        {  
    17.            e.Graphics.DrawImage(_NewBitmap, 0, 0, _NewBitmap.Width, _NewBitmap.Height);  
    18.        }</p>