找回密码
 立即注册

QQ登录

只需一步,快速开始

L1JiaHang.

注册会员

3

主题

13

帖子

34

积分

注册会员

积分
34
最新发帖
L1JiaHang.
注册会员   /  发表于:2024-3-25 11:34  /   查看:785  /  回复:7
2金币
在执行cellchange事件时
执行以下代码:
UndoAction action = new ClipboardCutDataOnlyUndoAction();
spread.UndoManager.PerformUndoAction(action);
打断点发现代码正常执行通过,通过之后却发现UndoList中并没有添加新的CUT行为,这是因为什么
AllowUndo已经开了

最佳答案

查看完整内容

这个应该是和系统内部的处理逻辑冲突了,没有什么好的处理办法。正常来说也不会有这种用例,把用户操作和代码执行的的ClipboardPasteUndoAction放在一起 如果你确实是要做,也可以尝试通过

7 个回复

倒序浏览
最佳答案
最佳答案
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-3-25 11:34:44
来自 6#
这个应该是和系统内部的处理逻辑冲突了,没有什么好的处理办法。正常来说也不会有这种用例,把用户操作和代码执行的的ClipboardPasteUndoAction放在一起

如果你确实是要做,也可以尝试通过

  1.             Task.Run(() =>
  2.             {
  3.                 Task.Delay(50).Wait();
  4.                 fpSpread1.Invoke(new System.Action(() =>
  5.                 {
  6.                     FarPoint.Win.Spread.UndoRedo.ClipboardPasteUndoAction clipboardPasteUndoAction = new FarPoint.Win.Spread.UndoRedo.ClipboardPasteUndoAction(fpSpread1.ActiveSheet, e.Row, e.Column, 1, 1, ClipboardPasteOptions.Values);
  7.                     var acts = fpSpread1.UndoManager.UndoList;
  8.                     fpSpread1.UndoManager.PerformUndoAction(clipboardPasteUndoAction);
  9.                     acts = fpSpread1.UndoManager.UndoList;
  10.                 }));

  11.             });
复制代码
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-3-25 18:29:12
2#
请提供一个可以复现问题的demo,我帮你看看原因
回复 使用道具 举报
L1JiaHang.
注册会员   /  发表于:2024-3-26 17:19:54
3#
修改任意单元格值,触发CellChange事件,执行完fpSpread1.UndoManager.PerformUndoAction(clipboardPasteUndoAction);方法,UndoList并没有新加粘贴行为,麻烦帮忙分析一下

Demo (1).zip

15.8 MB, 下载次数: 130

回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-3-26 18:17:50
4#
收到
回复 使用道具 举报
L1JiaHang.
注册会员   /  发表于:2024-3-28 11:23:05
5#
Richard.Ma 发表于 2024-3-26 18:17
收到

还需要补充什么吗
回复 使用道具 举报
L1JiaHang.
注册会员   /  发表于:2024-3-29 08:57:52
7#
Richard.Ma 发表于 2024-3-28 18:17
这个应该是和系统内部的处理逻辑冲突了,没有什么好的处理办法。正常来说也不会有这种用例,把用户操作和代 ...

好的,谢谢
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-3-29 09:00:57
8#
不客气
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部