关于单次撤销多个单元格值
Spread事件会更改三个单元格值,怎么才能一次ctrl+z撤回三个单元格的值,UndoManager.PerforUnaction一次只能放一个行为,没办法多个 是的,UndoManager目前没有办法实现你的需求,也没有其他的解决办法。 Richard.Ma 发表于 2024-3-18 18:21是的,UndoManager目前没有办法实现你的需求,也没有其他的解决办法。
谢谢你的回答,还有一个问题,在执行redo的过程中调用了事件,在事件里面的UndoManager方法不能够正常使用吗 有具体的代码吗,你是在ActionComplete事件中来使用的吗?
Richard.Ma 发表于 2024-3-21 15:57
有具体的代码吗,你是在ActionComplete事件中来使用的吗?
代码不方便给,剪切值之后执行Redo,在执行redo的时候,会改变单元格的值,然后进到CellChange里面,然后CellChange里面会执行新的UndoManager的剪切方法,但是值并没有被剪切掉 Richard.Ma 发表于 2024-3-21 15:57
有具体的代码吗,你是在ActionComplete事件中来使用的吗?
是因为代码执行顺序吗,可是如果没有redo过,会触发cellchange事件吗,还是剪切之后又执行了一次redo 理论上来说你在UndoManager的事件中这样用,确实会造成循环的调用。
如果需要协助调查,请给一个复现问题的demo,我帮你看看原因
页:
[1]