找回密码
 立即注册

QQ登录

只需一步,快速开始

zyh2123606

金牌服务用户

13

主题

30

帖子

143

积分

金牌服务用户

积分
143
zyh2123606
金牌服务用户   /  发表于:2024-5-14 19:13  /   查看:2220  /  回复:5
1金币
本帖最后由 Richard.Huang 于 2024-5-29 12:07 编辑

产品:SpreadJS
版本:V17.0.9
调研编号:SJS-24230

使用setStyle后会导致tag为空

复制粘贴.html

3.71 KB, 下载次数: 559

最佳答案

查看完整内容

spread.bind(GC.Spread.Sheets.Events.ClipboardChanging, function (sender, args) { console.log("ClipboardChanging", args); }); 这个事件是剪切板发生变化的事件,不是粘贴事件,意味着可以捕获到复制的动作,ClipboardChanging有个参数是range ,是粘贴区域。 您可以暂存此区域。

5 个回复

正序浏览
zyh2123606
金牌服务用户   /  发表于:2024-5-16 21:33:18
5#
这个问题太严重了,不仅setStyle还有sheet.clear,new GC.Spread.Sheets.Bindings.CellBindingSource重新绑定都会造成这个问题,这个不解决直接没法用了,我们业务上隐藏的字段较多,而且时间紧急,非常着急
image.png901416931.png
回复 使用道具 举报
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2024-5-15 09:56:55
4#
您好,我理解您的意思是在 SelectionChanged事件中setStyle后,发现粘贴的时候,获取到的fromRange为 null ,导致获取不到源粘贴区域,继而获取不到tag 。
我将深入调研下问题,编号是SJS-24230
回复 使用道具 举报
zyh2123606
金牌服务用户   /  发表于:2024-5-15 09:10:31
3#
不是原来设置的cell,而是粘贴后的cell,如果不setStyle,粘贴会带着tag,粘贴后的cell也会有tag,但是setStyle后,粘贴后的cell的tag就是undefined了
回复 使用道具 举报
Richard.HuangSpreadJS 开发认证
超级版主   /  发表于:2024-5-15 09:04:58
2#
您好,我这边没有复现您所描述的问题:
image.png161364134.png

附件是我测试使用的demo,您可以下载到本地进行测试 SpreadJSTest.html (4.12 KB, 下载次数: 518)
回复 使用道具 举报
最佳答案
最佳答案
Ellia.DuanSpreadJS 开发认证
超级版主   /  发表于:2024-5-14 19:13:29
来自 6#
spread.bind(GC.Spread.Sheets.Events.ClipboardChanging, function (sender, args) {
    console.log("ClipboardChanging", args);
});

这个事件是剪切板发生变化的事件,不是粘贴事件,意味着可以捕获到复制的动作,ClipboardChanging有个参数是range ,是粘贴区域。
您可以暂存此区域。

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部