繁体   English   中英

如何从RichTextBox控件的撤消堆栈中删除操作?

[英]How can I remove an action from undo stack of a RichTextBox control?

似乎在Windows窗体的RichTextBox中有这个ClearUndo()方法(请参阅system.windows.forms.textboxbase。 )。

我在RichTextBox Control需要类似的东西。 这是因为(正如这里提到的: 阻止将RichTextBox操作添加到控件的Undo堆栈中 ),每个更改都会添加到RichTextBox的撤消堆栈中。

我喜欢重写OnTextChanged事件并从Uno堆栈中删除一些这些更改。 我怎样才能做到这一点?

谢谢。

您可以使用以下代码模拟WPF RichTextBox控件的ClearUndo()

richTextBox.IsUndoEnabled = false;
richTextBox.IsUndoEnabled = true;

但是你无法控制Undo列表中的任何特定操作。

如果您仍想实现自己的Undo/Redo机制,最简单,最直接的方法是在每个重要文本更改中将控件的整个文本存储在数组中。 但是,只有当你不打算用控件编辑大文本时,我才会建议它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM