我试图在我的自定义应用程序中实现undo/redo功能,该应用程序使用ICSharpCode.TextEditor显示代码。
TextEditor完全支持undo和redo。但不幸的是,该控件的文档记录很少。目前还不清楚如何检测撤消状态的变化,因此程序可以灰显并重新启用工具栏上的撤消和重做按钮。
有什么合适的活动我可以订阅吗?然后我应该使用EnableUndo和EnableRedo属性吗?
发布于 2011-09-03 22:14:23
查看正在编辑的IDocument,而不是TextEditor。确保您正在使用IDocument方法编辑文档。您可以使用IDocument.UndoStack.StartUndoGroup和IDocument.UndoStack.EndUndoGroup将操作组合在一起。要查看是否可以撤消,可以检查IDocument.UndoStack是否为空。
https://stackoverflow.com/questions/7293569
复制相似问题