防止 RichTextBox 操作添加到控件的撤消堆栈中

发布于 2024-08-26 17:40:25 字数 115 浏览 8 评论 0原文

以编程方式编辑 RichTextBox 控件的文本(更具体地说,修改选择字体/颜色)似乎是在控件的内置撤消堆栈中进行跟踪。有没有办法,除了编写我自己的撤消/重做“管理器”之外,来防止某些操作/操作被添加到撤消堆栈中?

Editing a RichTextBox control's text (more specifically, modifying selection font/color) programmatically seems to be tracked in the control's built in undo stack. Is there a way, short of writing my own undo/redo "manager", to prevent certain actions/operations from being added to the undo stack ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

就像说晚安 2024-09-02 17:40:25

没有坦白。最好的情况是,您可以通过发送 EM_SETUNDOLIMIT 两次来完全刷新撤消堆栈。 EM_SETTEXTEX 提供与 ST_DEFAULT 标志相同的选项。肯定不是你想要的。看看 ScintillaNET 的真正编辑器。

No cando. At best you can flush the undo stack completely by sending EM_SETUNDOLIMIT twice. EM_SETTEXTEX offers the same option with the ST_DEFAULT flag. Surely not what you want. Look at ScintillaNET for a real editor.

风月客 2024-09-02 17:40:25

如果您在搜索 WPF c# 答案时来到这里,那么您在这里有一个很好的答案 已回答

If you came here when searching for a WPF c# answer you have a good one here Answered

明月松间行 2024-09-02 17:40:25

实际上,您可以通过实现一些 ITextDocument 接口并将 tomSuspend 和 tomResume 作为计数参数发送给 Undo 处理程序来轻松完成此操作。

Actually you can easily do this by implementing some of the ITextDocument interface and sending tomSuspend and tomResume as a count argument to the Undo handler.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文