我有一個RichTextBox,每次單擊「表單」按鈕時都會寫入一個字符串。每個字符串都以字符串「Long」或「Short」開頭,並以換行符結束。每次添加一個字符串時,它都會附加到RichTextBox的底部。如果以「長」生存,每行都會變成紅色,如果以「變短」開始,則爲藍色。我怎樣才能做到這一點?更改WinForms RichTextBox中文本的顏色
28
A
回答
46
當然,你可以做的是使用SelectionStart,SelectionLength和SelectionColor屬性來完成這個。它工作得很好。
查看this page瞭解這些屬性的信息。
通過將SelectionStart屬性設置爲當前長度,獲取要附加的字符串的長度,設置SelectionLength,然後將SelectionColor設置爲,您可以知道RichTextBox文本的長度併爲其着色適當。沖洗並重復添加每個字符串。
int length = richTextBox.TextLength; // at end of text
richTextBox.AppendText(mystring);
richTextBox.SelectionStart = length;
richTextBox.SelectionLength = mystring.Length;
richTextBox.SelectionColor = Color.Red;
就是這樣的。這就是我記得它的工作原理。
35
我只是在我正在編寫的程序中這樣做。我正在做@itsmatt之類的東西,但我覺得更簡單一些。您只需設置Selectioncolor
,然後從RichTextBox
的那一點開始,您就可以使用該顏色,直到將其更改爲其他顏色。如果你正在測試每條線路,這似乎工作得很好,很容易。
if(myString == "Long")
{
richTextBox.SelectionColor = Color.Red;
}
else
{
richTextBox.SelectionColor = Color.Green
}
richTextBox.AppendText(myString);
相關問題
- 1. RichTextBox的文本顏色
- 2. 在RichTextBox中更改字體時文本的顏色
- 3. 更改Richtextbox中一行的顏色
- 4. 更改RichTextBox中的鏈接顏色
- 5. 更改c#winforms中的文本框的邊框顏色 - 新手
- 6. RichTextBox中選定文本的顏色
- 7. Richtextbox預先加入顏色新文本
- 8. 更改標題的顏色RichTextBox VB.NET
- 9. 更改字體顏色爲RichTextBox的
- 10. 更改RichTextBox字體保持文本顏色
- 11. WPF RichTextBox更改字體顏色內嵌
- 12. 更改文本顏色
- 13. 更改文本顏色onclick
- 14. JQuery更改文本顏色
- 15. 更改QCheckBox文本顏色
- 16. RadGridView更改文本顏色
- 17. 更改文本顏色CSS3
- 18. 更改文本顏色
- 19. 更改TimePicker文本顏色
- 20. 更改UIAlertController文本顏色
- 21. 更改文本顏色,$%
- 22. RichTextBox的文本顏色的特定行
- 23. 更改與父文本顏色不同的子文本顏色?
- 24. Richtextbox mousemove event文本的顏色是
- 25. 更改UITableViewCell中UILabel的文本顏色
- 26. 更改ListView中的文本顏色
- 27. 更改WebView中的文本顏色?
- 28. 更改Greasemonkey中的文本顏色
- 29. 更改MFC C++中的文本顏色?
- 30. 更改DataGridVIewComboBoxCell中的文本顏色
我喜歡這種方法。感覺比追加文本更有效率,然後返回並使其變成另一種顏色,再加上你不必擔心選擇開始/長度。 – James 2011-07-07 10:40:31
+1,因爲這比接受的答案更簡單,更優雅。 – 2014-01-23 04:23:54