找回密码
 立即注册

QQ登录

只需一步,快速开始

jyjc 讲师达人认证
高级会员   /  发表于:2021-9-7 17:26  /   查看:3609  /  回复:11
本帖最后由 Richard.Ma 于 2021-10-12 16:42 编辑

设置列上显示指定层级未生效,未折叠起来。
worksheet.Outline.ShowLevels(columnLevels: 2);
企业微信截图_16310688705337.png
企业微信截图_16310930753217.png

设置后.ssjson

110.44 KB, 下载次数: 81

设置前.ssjson

110.44 KB, 下载次数: 67

11 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-7 18:25:06
沙发
本帖最后由 Clark.Pan 于 2022-7-13 16:36 编辑

这个问题可能和你这边设置的分组也有关系,也就是和上个帖子中的问题有关。

最好可以上传一个demo,我来帮您验证错误原因
------------------
该问题最新进展:

该问题已经在V14.1.5版本中修复。
回复 使用道具 举报
jyjc讲师达人认证
高级会员   /  发表于:2021-9-8 10:41:47
板凳
Richard.Ma 发表于 2021-9-7 18:25
这个问题可能和你这边设置的分组也有关系,也就是和上个帖子中的问题有关。

最好可以上传一个demo,我来 ...

这样设置后,页面列分组没有折叠生效。如图所示。
worksheet.Range["B:I"].Group();
worksheet.Range["D:G"].Group();
worksheet.Outline.ShowLevels(columnLevels: 2);
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-7 17:26:14
地板
设置ShowLevels,显示的层级和你在excel文件中点击对应的数字显示的效果是一样的,也就是显示到第二层。如下图。这个没有问题。
对于这个sheet,可以将ShowLevels的列参数设置为(1、2、3)都是可以显示到对应的层级的。设置大于3的数字,也是会显示到最大层级3。
image.png114474486.png
回复 使用道具 举报
jyjc讲师达人认证
高级会员   /  发表于:2021-9-8 14:42:40
5#
本帖最后由 jyjc 于 2021-9-8 15:29 编辑
Richard.Ma 发表于 2021-9-8 11:53
设置ShowLevels,显示的层级和你在excel文件中点击对应的数字显示的效果是一样的,也就是显示到第二层。如 ...

我把我的表单转成ssjson格式上传了,你可以试一下设置ShowLevels,我这边是不生效的。设置前的文件是只做了分组处理:
worksheet.Range["B:I"].Group();
worksheet.Range["D:G"].Group();
设置后的文件设置了ShowLevels:
worksheet.Outline.ShowLevels(columnLevels: 2);

回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-8 15:34:13
6#
这里测试也没有重现问题,以下是测试代码,GC的版本用的也是您说的4.1.0.0
如果您那边还是无法解决的话,建议还是发我一个重现问题的demo

  1.             Workbook workbook = new Workbook();
  2.             workbook.FromJson(File.ReadAllText(@"D:\Projects\3.ssjson"));
  3.             workbook.ActiveSheet.Outline.ShowLevels(columnLevels: 2);
  4.             workbook.Save(@"D:\Projects\1234.xlsx");
复制代码



最终保存后的效果
image.png303030089.png
回复 使用道具 举报
jyjc讲师达人认证
高级会员   /  发表于:2021-9-8 16:30:14
7#
Richard.Ma 发表于 2021-9-8 15:34
这里测试也没有重现问题,以下是测试代码,GC的版本用的也是您说的4.1.0.0
如果您那边还是无法解决的话, ...

分析发现是设置ShowLevels后做了其他操作导致的,代码如下:
worksheet.Outline.ShowLevels(columnLevels: 2);
worksheet.Range["X:XFD"].Delete();
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-8 16:58:12
8#
也没有重现问题 ConsoleGC.zip (41.48 KB, 下载次数: 74)
回复 使用道具 举报
jyjc讲师达人认证
高级会员   /  发表于:2021-9-8 17:29:05
9#
本帖最后由 jyjc 于 2021-9-8 17:31 编辑
Richard.Ma 发表于 2021-9-8 16:58
也没有重现问题

上面是我这边写的demo,您可以在你那边测试一下,可能还是有其他的原因

我这边是转化成json格式传到前端的显示的,我把ssjson格式文件导入到你们在线编辑器,也是显示有异常。如图所示。
var result = workbook.ToJson();
企业微信截图_16310839354665.png
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-8 18:11:47
10#
本帖最后由 Richard.Ma 于 2021-9-8 18:14 编辑

嗯,这个问题我这边重现了,因此的列是正确的,但是显示的不是收缩的“+”图标
目前看来更大的可能是spread显示的问题,在编辑器中再点一次分组的“2”按钮就正常了

image.png447807921.png

此问题我会作为bug提交给spreadjs研发,此帖暂时保留处理
抱歉,我这边刚开始一直以为你是保存为xlsx文件后打开有问题,
也建议您下次发帖时,可以尽量完整的描述重现问题的步骤,这样有助于我们协助您更快的重现问题,查找原因
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部