6

我正在寻找支持语法高亮、代码折叠等的优质 WinForms 组件。关键标准是:

  1. 稳定
  2. 价值(价格)
  3. 能够轻松自定义语法以突出显示
  4. 轻的
4

3 回答 3

7

ICSharpCode.TextEditor是免费的并且相当稳定。
至于商业解决方案 Actipro 的SyntaxEditor可能是最佳选择

于 2008-09-03T14:35:21.353 回答
4

与 Scintilla.Net 相比,增强 ICSharpCode.TextEditor 是微不足道的。ICSharpCode.TextEditor 的另一个巨大好处是允许您自定义/构建自己的语法突出显示,例如:https ://github.com/icharpcode/SharpDevelop/wiki/Syntax-highlighting 。

但是 ICSharpCode.TextEditor 不稳定,它充斥着 AccessViolations:https ://www.google.com.au/search?q=icharpcode.texteditor+accessviolationexception

您可以通过下载直接查看这些 AccessViolations:http: //www.codeproject.com/Articles/30936/Using-ICSharpCode-TextEditor

GitHub 上的这个构建在 winforms 中表现更好,但在 VSTO 中它仍然尖叫 AccessViolations: https ://github.com/KindDragon/ICSharpCode.TextEditor

DigitalRune 的 ICsharp.TextEditor 版本相同。

我推荐最新的 WPF 实现:ICSharp.AvalonEdit

如果您需要在 Winforms 中托管此 WPF 控件:

public Form1()
{
InitializeComponent();
ICSharpCode.AvalonEdit.TextEditor te = new ICSharpCode.AvalonEdit.TextEditor();
ElementHost host = new ElementHost();
host.Size = new Size(200, 100);
host.Location = new Point(100, 100);
host.Child = te;
this.Controls.Add(host);
}


我遇到了一些商业的(注意我不隶属于这些公司): http ://www.actiprosoftware.com/products/controls/windowsforms/syntaxeditor http://www.qwhale.net/products/editor.htm

于 2013-05-06T04:13:05.093 回答
3

试试ScintillaNET,它是一个 .NET WinForms 包装器,围绕着优秀的Scintilla控件。Scintilla 本身是一个免费的源代码编辑器组件,它非常可定制并具有您要求的所有功能。请参阅此处获取屏幕截图。

于 2008-09-04T11:35:15.460 回答