这个应该是和系统内部的处理逻辑冲突了,没有什么好的处理办法。正常来说也不会有这种用例,把用户操作和代码执行的的ClipboardPasteUndoAction放在一起
如果你确实是要做,也可以尝试通过
- Task.Run(() =>
- {
- Task.Delay(50).Wait();
- fpSpread1.Invoke(new System.Action(() =>
- {
- FarPoint.Win.Spread.UndoRedo.ClipboardPasteUndoAction clipboardPasteUndoAction = new FarPoint.Win.Spread.UndoRedo.ClipboardPasteUndoAction(fpSpread1.ActiveSheet, e.Row, e.Column, 1, 1, ClipboardPasteOptions.Values);
- var acts = fpSpread1.UndoManager.UndoList;
- fpSpread1.UndoManager.PerformUndoAction(clipboardPasteUndoAction);
- acts = fpSpread1.UndoManager.UndoList;
- }));
- });
复制代码 |