WPF RichTextBox用行号[closed]创建编辑器

我正在为特定于域的语言创建文本编辑器。我使用WPF
RichTextBox
作为基本控件。我不知道如何优雅地包括行号。有谁知道任何例子?     
已邀请:
AvalonEdit是一个很好的,它是开源的。我认为它几乎具有Aqistar控件的所有功能,例如语法高亮和折叠。易于配置和使用。更多细节可以在这里找到。     
我将创建一个复合控件,左侧是堆栈面板控件和文本块,您可以使用它来处理行号。如果您关注行数并且具有太多可视元素,那么您可以在虚拟模式下使用ListBox。 您必须连接到RichTextBox上的各种事件,以便您知道何时更新ListBox,以及计算每行的高度,但这应该与附加到RichTextBox的FlowDocument相关。     
RichText支持“受保护” - 不可编辑 - 跨度。您可以将行号转储为受保护的文本跨度作为RTF流的一部分(当您进行格式化时)。 在Win Forms中,您可以使用RichTextBox.SelectionProtected属性。 WPF必须有类似的东西。 这样,您的所有基线都是正确的,您无需进行任何额外的思考/编程即可使编辑器正常运行。可编辑的文本将是可编辑的,行号不会。 唯一不足的是您必须在每次编辑后重新提交RTF流。但我想你已经这样做了提供解析格式/错误诊断/无论如何。     
如何使用AqiStar的富文本WPF控件? AqiStar.TextBox 我不为他们工作......我只知道Oren在他的NHibernate Profiler(NHProf)中使用这个产品,他似乎在挖掘它。     
怎么一个个都文绉绉的[b]

要回复问题请先登录注册