我做的一个C# winform,打印部分,预览的数据完全正常,打印出的内容,确没有主体数据,请大家帮我指点一下为什么出现这样的问题。                    
prtDocument.PrintPage += new PrintPageEventHandler(Document_PrintPage);
                  
                    if (ispreview)
                    {
                        PrintPreviewDialog prtPreviewDialog = new PrintPreviewDialog();
                        prtPreviewDialog.Document = prtDocument;
                        prtPreviewDialog.ShowDialog();
                    }
                    else
                    {
                        prtDocument.Print();
                    }

解决方案 »

  1.   

    打印一个DataTable表,前面有一个表头以及制表日期,结果只在打印出前面部分,真正的表格数据部分,只是在预览中显示出来,但打印到纸上不正确。纸张为A4,以打印机的默认数据,只是设置了为横向,预览显示十分正确!我想已经预览出来了,说明打印的代码已经是正确的,只是我搞不清楚,为什么预览正确,打印即不正确。
      

  2.   

    这里应该是打印机的设置有问题,你用word打印一张表格试试看看是不是也有你那样的问题。
      

  3.   

    成功了。4楼的兄弟给出了决定性的建议。谢谢了。原因是:预览时执行了一次Document_PrintPage,在预览窗口点击【打印按钮】,需要执行一次Document_PrintPage。因为在窗口中加入了两个变量,以它们俩来判断是否显示完表格中的正在显示行与页码。显示完成后,没有它进行复位为0,所以。再次感谢4楼的rekym。(建议兄弟不要做骗子:出来混,迟早是要还的。呵呵)