2012-09-14 39 views
-3

我正在使用windows窗體。在我的項目中,我需要着色富文本框的最後一個字。當有人在應用程序的給定文本框上寫字時,我需要將剛剛寫在richtextbox上的最後一個單詞用紅色或其他字體表示。如何提取richtextbox中的最後一個單詞在c#

我找到了一種方法來從以下鏈接

http://msdn.microsoft.com/en-us/library/system.windows.documents.textselection.select%28v=vs.95%29.aspx

提取硬道理但我需要更加得心應手代碼,如果其能夠提取出的最後一個字。請幫忙。

+3

更方便????? –

+2

您提供的代碼看起來非常簡單。 – zmbq

+1

你有沒有試過這個代碼?看起來不錯。有什麼需要改進呢? – Adam

回答

1

下面是示例代碼

*>炭[] ARR =新的char [50];

 int i = 0; 
    private void richTextBox1_KeyUp(object sender, KeyEventArgs e) 
    { 
    if (e.KeyCode == Keys.Space)   { 
     string str = new string(arr); 
     MessageBox.Show(str); 
     Array.Clear(arr, 0, arr.Length); 
     i = 0; 
    } 
    else if (e.KeyCode == Keys.Back) 
     { 
     i--; 
     if (i < 0) 
     { 
      i = 0; 
     } 
     arr[i] = ' '; 


    } 

    else 
    { 
     arr[i] = (char)e.KeyValue; 

     i++; 
    } 
    }* 

這是你將如何能夠提取最新的字。現在給自己塗上你喜歡的單詞。

2

好吧,如果你真的只是希望得到的最後一個字,你可以做這樣的事情......當然假設,你讓一個字符串等於你的富文本框的文本。

string str="hello, how are you doing?"; 
if (str.Length >0) 
{ 
    int index=str.LastIndexOf(" ") + 1; 
    str = str.Substring(index)); 
} 

然後只是返回字符串,並做你需要做的。

+0

這不會幫助他顏色的字,如果最後一個字是在自己的段落也將無法正常工作。 – zmbq

+0

請問這個有什麼用C# – 2015-02-27 19:48:27

-1

正如我記得富文本框可以呈現文本爲HTML。
只需在字體標籤中包裝最後一個單詞即可。

+0

提取物中的最後一個字是個問題,而不是如何顏色的字了豐富的文本框 – 2015-02-27 19:48:54

相關問題