找回密码
 立即注册

QQ登录

只需一步,快速开始

vbagcl

初级会员

24

主题

100

帖子

210

积分

初级会员

积分
210

活字格认证微信认证勋章

vbagcl
初级会员   /  发表于:2017-6-21 15:49  /   查看:3167  /  回复:5
如题,SaveExcel导出数据时ComboBoxCellType类型的列导出的是value,而不是text。
比如:有一列是ComboBoxCellType类型,画面加载的数据如下所示:
1、男
2、女
导出的数据是1或者2,而不是男或者女。
如何设置,请高手指点!
我导出execl的语句如下:
oSpread.SaveExcel(sSaveExcelName,FarPoint.Excel.ExcelSaveFlags.SaveCustomColumnHeaders | FarPoint.Excel.ExcelSaveFlags.UseCustomPaletteForColorApproximations);

5 个回复

倒序浏览
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-6-21 17:38:50
沙发
设置editorValueType试试
var combo = new GC.Spread.Sheets.CellTypes.ComboBox();
combo.editorValueType(GC.Spread.Sheets.CellTypes.EditorValueType.text);
回复 使用道具 举报
vbagcl
初级会员   /  发表于:2017-6-21 20:21:51
板凳

设置editorValueType试试
var combo = new GC.Spread.Sheets.CellTypes.ComboBox();
combo.editorValueType(GC.Spread.Sheets.CellTypes.EditorValueType.text);
好像不行,首先没有找到editorValueType,找到一个类似的方法,不行。
最后变通一下,导出之前先new 一个spread,把原spread的数据写入新的spread中然后再导出。
虽然笨了点,问题也解决了。
先这么着吧!
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-6-22 15:33:53
地板
vbagcl 发表于 2017-6-21 20:21
设置editorValueType试试
var combo = new GC.Spread.Sheets.CellTypes.ComboBox();
combo.editorValue ...

您好, 看到您说找不到editorValueType,猜想您可能用的不是spreadjs,请问您用的是spread for winform,还是spread for ASP.NET
回复 使用道具 举报
vbagcl
初级会员   /  发表于:2017-6-22 15:39:27
5#
我用的是spread for winform
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-6-22 17:20:38
6#
vbagcl 发表于 2017-6-22 15:39
我用的是spread for winform

那就明白了,因为您将帖子发到了spreadjs专区, 我误以为您使用的是spreadjs,editorValueType是spreadjs的接口,那么我将您的帖子移动至winform专区。
winform中可以设置EditorValue,但是这样设置会有弊端就是可能value永远无法获取到了,如果您既想保留value又想导出text,目前只能选中您之前说的方法。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部