找回密码
 立即注册

QQ登录

只需一步,快速开始

yangbo_311811

初级会员

8

主题

12

帖子

316

积分

初级会员

积分
316

活字格认证

yangbo_311811
初级会员   /  发表于:2011-4-28 16:42  /   查看:7286  /  回复:5
使用:Spread for winform 5
问题:在设计时设置了3行列头,然后设置一共的行数为5行,然后将DataTable绑定到Spread,DataTable中一共10行数据,然后把Spread导出到Excel(把列头也导出了)结果发现Excel中只有7行数据,丢失了3条。(是不是因为把列头也导出,3行列头挤掉了3行数据?)
有人遇到过这个问题吗?

5 个回复

倒序浏览
gw0506
超级版主   /  发表于:2011-4-28 17:06:00
沙发
Excel本身不支持多行列头。所以这样导出后,会有问题。
回复 使用道具 举报
yangbo_311811
初级会员   /  发表于:2011-4-28 17:09:00
板凳
那有什么解决办法啊?
回复 使用道具 举报
gw0506
超级版主   /  发表于:2011-4-28 17:34:00
地板
不要在ColumnHeader中定义多行。
在Cell区域中定义你的多行Header,然后导出。

在Excel中,设计表格的时候,通常都是以第1行或者前几行为列头的,不会真的去改Excel的column header的。同理在Spread中模拟即可。
回复 使用道具 举报
yangbo_311811
初级会员   /  发表于:2011-4-29 08:47:00
5#
但是要是在Cell中定义Header的话,那么就就不绑定数据了,绑定数据会把设置在Cell中的Header覆盖掉?
回复 使用道具 举报
gw0506
超级版主   /  发表于:2011-4-29 09:14:00
6#
两个办法:
1. 使用绑定模式。先绑定数据源,之后插入几行,并按照设计将其设置为表头。
2. 使用非绑定模式。设计完表头之后,通过代码从数据源取得数据,再设置到Spread的相应Cell中。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部