2013-11-02 35 views
3

如何使用C#在RichTextBox中突出顯示語法,就像在IDE中完成的一樣?在RichTextBox中使用C突出顯示語法#

如果是這樣,我可以做這樣的事情,還是這太複雜?

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) 
{ 
} 
+0

RichTextBox的是一個必須具備的組成部分?如果沒有,只要考慮SharpDevelop項目,該項目提供了一個開源的真棒全功能編輯組件。 http://www.icsharpcode.net/OpenSource/SD/Default.aspx –

回答