使用C#在RichTextBox中突出显示语法

3

我该如何使用 C#在 RichTextBox 中高亮语法,就像在 IDE 中一样?

如果可以的话,我能否像这样做,或者这太复杂了吗?

public String SyntaxHighlight(string ToHighlight)
{
     string Highlighted = null;
     List<string> Blue = new List<string>();
     Blue.Add("public");
     Blue.Add("private");
     Blue.Add("static");
     Blue.Add("string");

     //And so on...

     for(int i = 0; i < WordCount(ToHighlight); ++i)
     {
         foreach(string B in Blue)
         if(GetWord(ToHighlight, i) == B)
         {
             Highlighted += GetWord(ToHighlight, i) // Set Colour Somehow;
         }
         else
         {
             Highlighted += GetWord(ToHighlight, i);
         }
     }
}
public int WordCount(string ToCount)
{
     int Count = 0;
     for(int i = 0; i < ToCount.Length; ++i)
     {
         if(ToCount[i].ToString() == " ")
         {
            Count++;
         }
     }
     return Count;
}
public String GetWord(string From, int WordNum)
{
}

RichTextBox是一个必备的组件吗?如果不是,可以考虑SharpDevelop项目,该项目提供了一个开源的、功能齐全的编辑组件。 http://www.icsharpcode.net/OpenSource/SD/Default.aspx - Mario Vernari
2个回答

2

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接