具有语法高亮显示的文本框/ richtextbox?

我在哪里可以find一个WinForms的控件,它将突出显示粘贴到它的源代码? 我想要一个语法高亮支持许多不同的语言,但如果它只适用于C#我会没事的。

Scintilla.NET可能是你正在寻找的

作为开源替代品,请看看:

  • dotNetFireball
  • SharpDevelop的 ICSharpCode.TextEditor

就在最近,我们从codeproject Fast Colored TextBox中find了一个用于语法高亮显示的控件 。

使用Rich Text Box作为荧光笔的唯一问题是,在文档大小较大的情况下,着色速度慢。 对于中等大小的文档,这个问题可以通过延迟突出显示来解决。

将ICSharpCode.TextEditor程序集引用添加到项目中,为Visual Studio Toolboxselect程序集和控件。 之后,你可以把控制权交给表格。 令人惊讶的是,你不会看到属性来select语法高亮模式。 而不是这个,你必须使用方法SetHighlighting。 string参数设置从可用模式列表中突出显示模式。 这些模式embedded到控制中。

如何使用,更改模式和下载示例,请看下面的文章

如果您愿意为控件付款,我强烈推荐这个: QWhale语法编辑 。 它有很多function,附带源代码,并支持很多语言。 我自己使用C#,VB.NET,SQL(MS&Oracle),它提供了VS所提供的一切。

看看AvalonEdit控件。 CodeProject上有一篇很好的文章解释了如何使用它。

不确定是否有任何开箱即用的非第三方解决scheme。

但是,你看过Actipro SyntaxEditor组件吗? LinqPad ,ubercool linq工具将其用于语法突出和智能感知。