Усовершенствование ICSharpCode.TextEditor было тривиально по сравнению с Scintilla.Net. Еще одно огромное преимущество ICSharpCode.TextEditor - это то, что позволяет настраивать/создавать собственные синтаксические выделения, например: https://github.com/icsharpcode/SharpDevelop/wiki/Syntax-highlighting.
НО ICSharpCode.TextEditor не является стабильным, его пронизана AccessViolations: https://www.google.com.au/search?q=icsharpcode.texteditor+accessviolationexception
Вы можете увидеть эти AccessViolations из первых рук, загрузив: http://www.codeproject.com/Articles/30936/Using-ICSharpCode-TextEditor
Эта сборка на GitHub ведет себя лучше в WinForms, но В VSTO он все еще кричит AccessViolations: https://github.com/KindDragon/ICSharpCode.TextEditor
То же, что и DigitalRune's version of the ICsharp.TextEditor.
Я бы рекомендовал последнюю реализацию WPF: ICSharp.AvalonEdit.
Если вам необходимо разместить этот элемент управления WPF в Winforms:
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
SnippetCompiler http://www.sliver.com/dotnet/SnippetCompiler/ также использует ActiPro для своего редактора. –
BTW, в случае, если кто-либо задается вопросом, ActiPro не поддерживает профиль клиента. –