【发布时间】:2011-05-19 04:49:19
【问题描述】:
我扩展了一个富文本框来进行语法高亮,利用富文本框类提供的选择功能。然而,在这个过程中,我失去了在文本框上处理撤消和重做的能力。当我撤消时,它所做的只是选择我以编程方式选择并突出显示的最后一个单词。
是否有处理这种情况的解决方案,我想要撤消/重做功能以及选择文本块和更改背景颜色等的能力?
干杯
红龙
【问题讨论】:
标签: c# richtextbox
我扩展了一个富文本框来进行语法高亮,利用富文本框类提供的选择功能。然而,在这个过程中,我失去了在文本框上处理撤消和重做的能力。当我撤消时,它所做的只是选择我以编程方式选择并突出显示的最后一个单词。
是否有处理这种情况的解决方案,我想要撤消/重做功能以及选择文本块和更改背景颜色等的能力?
干杯
红龙
【问题讨论】:
标签: c# richtextbox
听起来你的设计有缺陷。
对于语法突出显示,最好将文本和格式分开。通过像您所做的那样将它们混合在一起,您使实施撤消变得非常困难。您不能再依赖控件来执行此操作,因为您将文本编辑与格式编辑混为一谈。
您是否考虑过使用像 Scintilla 这样的东西,而不是尝试再次解决这个问题?
【讨论】: