水晶报表的详细资料的格式是一条条记录向下扩展,例如:
第1条记录
第2条记录
第3条记录
。
。
。
现在我想这样排版
第一条记录 第二条记录
第三条记录 第四条记录
。 。
。 。
。 。 应该怎么做啊?
第1条记录
第2条记录
第3条记录
。
。
。
现在我想这样排版
第一条记录 第二条记录
第三条记录 第四条记录
。 。
。 。
。 。 应该怎么做啊?
解决方案 »
- WPF,在多显示器下如何使窗体在当前显示器下最大化
- 扩展 DataGridView 的功能
- 文件拷贝时出现”指定的路径或文件名太长,或者两者都太长“的错误
- ISAM 错误(找不到可安装的)
- 打包中的自定义操作的问题【答对全分】。
- 请教一下,在不知道数组总共有多少个元素的情况下,怎么实现数组中偶数下标的数减奇数下标的数?
- 问一个很傻的问题,有windows2003的进来一下
- 为什么我的SQL语句在SQLSERVER中运行正常,而放到程序里出错?
- treeview的问题:
- 为什么用VS打开一个从网上下载的用C#做的源代码会出现这种错误
- 如何区分日语汉字和半角全角katakana
- 求打印winform中的内容有多页,如何只打印预览中打印其中一页,判断打印机是否有效(连接上可以用的)在线等,急急
这个函数送你了,第一个参数是变换倍数,你的应是2后面是输出Datatable
private void ChangeDataTable(int Times,DataTable Table,ref DataTable dtb)
{
dtb = new DataTable();
int N = Times;
for(int j = 0;j<N;j++)
{
for(int i = 0;i<Table.Columns.Count;i++)
{
System.Data.DataColumn Cm = new DataColumn(Table.Columns[i].ColumnName+j.ToString(),Table.Columns[i].DataType,Table.Columns[i].Expression,Table.Columns[i].ColumnMapping);
dtb.Columns.Add(Cm);
}
}
for(int i = 0;i<Table.Rows.Count;i=i+N)
{
DataRow dtr = dtb.NewRow();
Object[] objArr = new object[dtb.Columns.Count];
for(int j = 0;j<Table.Columns.Count;j++)
{
for(int k =0;k<N;k++)
{
if(i+k<Table.Rows.Count)
{
objArr[k*Table.Columns.Count+j] = Table.Rows[i+k].ItemArray[j];
}
}
}
dtr.ItemArray = objArr;
dtb.Rows.Add(dtr);
}
}
試過是OK的
我用crystalreport10:
在design的最左邊按右鍵,選section expert
點detail,勾選Format with Multiple Columns
在layout標簽頁中Detail size試著改變數字例如為3
Printing Direction選擇Across then down
在預覽時即可看到喔
我用的是.Net自带的水晶报表,没搞出来。你们能不能做个例子给我看看啊,我的信箱是[email protected].
我剛用VS.NET 2003自帶的又做了一個(不過用CRYSTALREPORT10可以預覽),
如果MAIL給你,恐怕你也打不開,或者不能運行(我用的是MYSQL資料庫)
還是先將步驟再給你作一下描述:
1.打你的CRYSTALREPORT表單
2.在表單上按右鍵,選擇[區段格式設定...]
3.在出現的[區段專家]中選[細目],在[一般]標簽頁中勾選[設定多重資料行的格式]
在[配置]標簽頁中將[細目大小]的[寬度]改為3或者4...
將[列印方向]選為[橫向]試試嘍,有疑問請留言
能不能把你的报表文件mail给我,我看看报表文件。数据库没有关系,我用自己的数据库就可以了。
邮箱地址在上上楼。谢谢拉。