小前言:我是C#和genral应用程序编程的新手。
所以我不想写代码编辑器,不过没什么特别的。我正试图通过RichTextBox.SelectionColor实现语法高亮显示,正如这里所建议的那样,但我发现很麻烦的是,人们实际上可以看到文本框中的文本是如何选择的,并且文本框的屏幕跟随选择(将文本滚动到当前选择)。该项目是通过WindowsForms完成的,我尝试过:http://blogs.microsoft.co.il/blogs/tamir/archive/2006/12/14/RichTextBox-syntax-highlighting.aspx这显然是在使用WPF,但在这方面的性能相当差。我也不想重写我为WPF所做的。
信不信由你,但我找了一下,什么也找不到。
所以我想问:是否有一些命令或设置可以禁用这种行为?
创建一个性能良好的代码编辑器非常具有挑战性。获得最佳结果通常需要从头开始编写新控件。如果可以的话,我建议SharpDevelop团队使用此控件。
http://www.codeproject.com/Articles/30936/Using-ICSharpCode-TextEditor
在您的情况下,有一种方法可以冻结文本框的更新,同时使用windows api函数LockWindowUpdate更改文本的颜色。