本帖最后由 品茗-3 于 2019-3-8 16:59 编辑
如图调试:(上个11版本中我没遇到这个问题,升级到12.45.20181.0版本后出现的)
1.如图导入excel(自己新建表格也行),通过xml形式保存,使用tmp.Save(spreadfile, SaveXMLOptions.All); // tmp为spread对象
从调试中看出, 此时页的多选属性(sheet.SelectionPolicy)为正常的SelectionPolicy.MultiRange(MultiRange支持Ctrl键多选cell)
2.如图导入成功后,打开表格,使用Open接口打开,用BindEvents(FpSpread spread)方法初始对象,
从调试中看出, 此时页的多选属性(sheet.SelectionPolicy)变成了的SelectionPolicy.Range(不支持Cell以Ctrl多选),
需要我通过再次遍历每个sheet设置
if (sheet.SelectionPolicy != SelectionPolicy.MultiRange)
sheet.SelectionPolicy = SelectionPolicy.MultiRange;
问题:涉及接口:(1)_Spread.Save(string fileName, SaveXMLOptions saveOption);
(2)_Spread.Open(string fileName);
通过GIF图中的测试,发现_Spread的上述接口可能:
1、未保存sheet的SelectionPolicy属性
2、或open接口对SelectionPolicy重新初始成了Range
3、未知原因
导致需要每次对每个sheet重新初始SelectionPolicy属性。
|