0
配置:格式的文本顏色表格
- 的Windows 7
- .NET 3.5
- 的Visual Studio 2008
摘要:通過發送的話到RTB一個for循環;根據它們的內容對它們進行格式化(綠色顯示「OK」,紅色顯示「失敗」)。
代碼:
for (int i = 0; i < inputValues.Length; i++)
{
//checking if the value is OK or not
string answer = functionReturningString(inputValues[i], referenceValue);
textBox4.Text += answer; //and sending the result string to text box
}
現在我只是想選擇最後添加字符串,並根據其內容進行格式化。
textBox4.SelectAll();
textBox4.Select(textBox4.SelectedText.Length - answer.Length, answer.Length);
if (answer == "OK")
{
textBox4.SelectionColor = Color.Green;
} else {
textBox4.SelectionColor = Color.Red;
}
textBox4.Refresh();//I want to see every value as soon as added
textBox4.Text += "\r\n"; //adding space between words
至於結果,它最終將對rtb中的所有單詞使用「SelectionColor」。
問:如何確保先前格式化的單詞不會再改變顏色?
更新:建議的解決方案也不起作用。單詞將以正確的顏色顯示(首先)。然後添加下一個單詞並且整個框的顏色改變。
http://stackoverflow.com/questions/2527700/change-color-of-text-within-a-winforms-richtextbox/2531177#2531177 –
@Ivan stoev我需要刪除rtb.refresh(),如果我使用你建議的代碼? – Avigrail
我不確定,爲什麼不嘗試看看是否需要。 –