日期:2014-05-20  浏览次数:20863 次

阿泰??阿泰????阿泰在哪???快进来帮帮忙啊
小弟最近要打印一个DataGridView中每行的数据,或者说要打印一个DataTable中得部分列,

但是其中一些列的数据比较长,不可能打印预览看起来是一列一列的,遇到这些数据比较多的列呢,

要换一行打印,就相当于这样
第一行数据显示为:

列1 列2 列3 列4 列 5  
数据 数据 数据 数据 数据

列6:数据。。。。。。。
列7:数据。。。。。。。

第二行数据显示为:

列1 列2 列3 列4 列 5  
数据 数据 数据 数据 数据

列6:数据。。。。。。。
列7:数据。。。。。。。


就这样一行一行的打印dataGridView或DataTable部分列的数据

求一个算法或者循环绘制字符串的方法,想了一下午,纠结了,还得考虑字体大小的关系,还要考虑列数据对齐的关系,(每列列名要和该里的数据对齐)

【jshi123 (用户名:jshi123) 】教我用ReportViewer报表,可是我做不出来像这样的结果,做出来的只是想这样的


怎么样才能让后面的列6 列7 的数据按行显示呢??并且我数据显示出来之后,只显示了表中的一行,其余的都没显示出来,
还有,我想让显示的每行数据都包含含有表头(也就是列名)我用的是vs2008,如果再有个在代码中创建报表的例子就更好了,不是通过创建向导创建的,这样太不灵活了

------解决方案--------------------
我不是阿泰!!!
感觉杀鸡用牛刀了!!
你要在DataGrid里面显示的话,你可以设置行高列宽

你若要打印出来话,何不导出Execl,让微软帮你做呢??
程序更应该注重的是逻辑!!
------解决方案--------------------
要么,行转列,用矩阵控件,要么你就定义纸张大小,貌似在10版本上面,列是有特殊控制的,建议装vs10后试试
------解决方案--------------------
友情帮顶
------解决方案--------------------
LZ要打印的效果图有吗