找回密码
 立即注册

QQ登录

只需一步,快速开始

fosfa

注册会员

7

主题

15

帖子

48

积分

注册会员

积分
48
fosfa
注册会员   /  发表于:2016-4-17 17:33  /   查看:4750  /  回复:4
本帖最后由 fosfa 于 2016-4-17 17:37 编辑

使用如下语句:
gcSpreadSheet1.ActiveSheet.Cells[0, 0].Text = "aaa\nbbb" ;

然后再使用 SaveExcel();    输出到Excel文件,  打开Excel后可以看到,对应的单元格的内容并没有换行。   这是怎么回事?

4 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-18 11:25:36
沙发
问题我重现了,并且发现导出后在编辑栏点击一下后就自动换行了。现在调查发现导出的excel格式没有问题,怀疑也可能是excel程序的问题,请问您使用的excel是什么版本?
回复 使用道具 举报
fosfa
注册会员   /  发表于:2016-4-18 23:40:56
板凳
本帖最后由 fosfa 于 2016-4-18 23:43 编辑
dexteryao 发表于 2016-4-18 11:25
问题我重现了,并且发现导出后在编辑栏点击一下后就自动换行了。现在调查发现导出的excel格式没有问题,怀 ...

我两台电脑, 一台是office2013,一台是office2010, 不管是保存为xls 还是xlsx 都是这个问题。
我发现,不只是用c# 中的\n会出现这个问题,  用XAML中的“&#xa”也依然会出现这个问题。。例如:textblock中有“&#xa”换行符的话,将这个textblock中的内容读取到表格中,  然后再导出的Excel也不会换行。。。。

回复 使用道具 举报
fosfa
注册会员   /  发表于:2016-4-18 23:56:25
地板
fosfa 发表于 2016-4-18 23:40
我两台电脑, 一台是office2013,一台是office2010, 不管是保存为xls 还是xlsx 都是这个问题。
我发现 ...

但是也有例外:
我试着写了一个简单的demo,该demo中含有一个spread表格, 另外有一个按键,  一点击这个按键 就会将spread表格导出为Excel。  
然后运行程序,  然后在spread表格中 人工输入内容, 利用alt+enter 换行。 然后点击按键输出Excel,就可以看到  输出的Excel 是没有问题的,有换行。

所以我想知道, spread 将外界输入进去的内容  在后台是以什么形式保存的? 其中的 alt+enter 换行  难道不是\n?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-4-19 09:52:47
5#
加上  this.gcSpreadSheet1.ActiveSheet.Cells[0, 0].WordWrap = true; 就好了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部