我对.NET和C#相当新,但我有一个DataGridView,我想要打印。这样做最好的方法是什么?打印.NET DataGridView
回答
您可以将DataGridView导出到Excel,然后从Excel中打印出来。
您也可以考虑不要在DataGridView中显示数据,而是将其显示在ReportViewer控件中,该控件可以导出为PDF或Excel。从那里可以打印你的数据。
@Bliek谢谢你的建议!就像我在另一条评论中提到的那样,我现在想尽量坚持这种控制......但我会牢记这一点! – 2009-02-18 14:50:51
毕竟我最终这样做了。我仍然在DataGridView中显示数据,但如果用户选择打印它,我使用报告查看器。再次感谢! – 2009-02-18 16:11:51
恐怕没有内置的打印支持。
您可能会诉诸使用第三方控件,例如内置支持打印的Infragistics WinGrid。
@Gerrie Schenck感谢您的链接!我认为现在我会继续努力尝试使用当前的控制,但我会牢记这一点,因为我需要它! – 2009-02-18 14:26:48
.NET WinForm控件(如datagridview)本身不支持打印。
但是,在datagridview的情况下,您可以调用'DrawToBitmap',然后将该位图传递给打印函数以便在纸上生成它。
@GWLlosa谢谢!这工作,我可以打印我的网格,但它看起来像一个截图。我希望能够将其格式化为更友好的外观。思考? – 2009-02-18 14:40:28
如果您想重新格式化它的外观,您需要在调用之前重新格式化控件本身,或者在绘制代码中实际“构建自己的”datagridview,使用行和单元格中的数据来填充它。快速变得凌乱。 – GWLlosa 2009-02-18 15:07:01
在CodeProject上有项目已经完成了一些打印DataGridViews的工作。
@Bob谢谢!我会尝试现在执行此... – 2009-02-18 14:41:46
+1是一个很好的资源。 – SoftwareGeek 2010-06-09 15:33:52
如果您要打印的不仅仅是DataGridView,那么更通用的方法可能值得追求。我们使用MigraDoc,然后编写我们自己的类来读取DataGridViews并输出代表表格的MigraDoc类。
有很多很棒的印刷包可用,但我只有MigraDoc的经验。
编辑:
响应于评论,这里是我的网站的链接表示我用于产生MigraDoc表创建的代码,并使用它来显示一个DataGridView(DataGridView to MigraDoc tables)的一个例子。
添加一个DataGridView,一个PrintDocuemnt,然后一个按钮:
button click events {
printDocument1.Print();
}
printDocument1_PrintPage events {
Bitmap bm = new Bitmap(this.dataGridView1.Width, this.dataGridView1.Height);
this.dataGridView1.DrawToBitmap(bm, new Rectangle(0, 0, this.dataGridView1.Width, this.dataGridView1.Height));
e.Graphics.DrawImage(bm, 0, 0);
}
这就是你的数据打印。
我知道你已经接受了答案,但旁边的人搜索这个问题...
我也发现代码项目上这美妙的项目,只是实现了它。这很简单,很好。 http://www.codeproject.com/KB/grid/GridDrawer.Net.aspx
我喜欢这种方法http://www.codeproject.com/KB/grid/GridDrawer.Net.aspx但有没有什么办法可以选择打印机。
我想在流程结束时自动打印。所以选择这个选项作为选项1,所以我总是可以打印到默认打印机。另一种选择喜欢选择打印机,然后打印。所以共有2个ptint函数。 请回复。 干杯
上面是一个极好的DataGridView
打印机是实现非常简单。
我意识到我是约翰尼快来到这个线程。我在寻找其他东西的时候偶然发现了这个问题,但是想要以这种方式为其他人发布这种优秀的打印解决方案(就像我一样)。
我希望这里有人能从中获得一些用处。
- 1. 打印DataGridView
- 2. 打印DataGridView
- 3. 如何打印dataGridview
- 4. 打印与.NET
- 5. 打印在.NET
- 6. 从datagridview打印数据
- 7. 在Winform C中打印DataGridView#
- 8. 如何打印DataGridView数据?
- 9. c#datagridview多页打印
- 10. 如何打印datagridview结果?
- 11. 打印问题与datagridview winforms
- 12. 从DataGridView打印记录
- 13. .net pos打印机滚印
- 14. 使用vb.net从datagridview打印到热敏打印机
- 15. 不从DataGridView打印数据而在打印预览显示
- 16. 如何在C#中打印DataGridView?
- 17. 如何在vb.net中打印datagridview结果?
- 18. 在vb.net中打印Datagridview数据
- 19. 分解大型DataGridView进行打印
- 20. C#datagridview的打印色彩每秒
- 21. .net从网站打印?
- 22. .net使用模板打印
- 23. .NET Compact Framework打印库
- 24. .NET 2.0 WinForm打印屏幕
- 25. 从.NET服务打印
- 26. 打印图像c#.net
- 27. .NET XML漂亮打印机?
- 28. 打印文件和.NET
- 29. 使用.net WebBrowser打印PDF?
- 30. 打印.net坐标单位
@Simon感谢您添加更多标签! :o) – 2009-02-18 14:25:44