我正在开发一个程序,我需要打印DataGridView控件中显示的Bills数据。
我想知道代码如何在DataGridView中打印数据。
我正在使用Visual Studio 2008和C#3.5
答案 0 :(得分:12)
DataGridView
内置了任何打印支持,因此您必须自己实现。有几种可能的解决方案:
WinForms 提供标准打印系统,您可以利用它打印出DataGridView
控件的内容。您需要使用PrintDocument
课程,因此相关的documentation是开始阅读的好地方。这种方法的优点是它允许您完全控制打印文档的格式和布局。
您可以将数据从DataGridView
导出到Microsoft Excel,然后从那里打印出来。 Excel具有更强大的内置打印支持。
如果您对推出自己的解决方案不感兴趣,可以浏览CodeProject一些已设计的解决方案。例如:
即使您没有找到符合您确切需求的插件解决方案,您也可以通过使用已发布的代码作为示例,自行了解如何自行创建此功能。
如果你想要一个真正的hacky解决方案(并且你没有任何愿望或需要自定义打印输出的布局或设计),你可以使用暴露的DrawToBitmap
方法通过每一个控制。这是一种非常快速和肮脏的方法,可以将DataGridView
控件的精确图像绘制在屏幕上显示的Bitmap
,然后您可以直接将其传递给打印机。