自動文本高亮顯示我非常非常新的C#,只是寫了一些計算器,文本編輯器和數據庫客戶端在學校近10年前:)不是我試圖做一個工具,我和我的同事們以更簡單的方式查看痕跡和日誌。我們所知的Notepad ++,我們每天使用文本突出顯示,樣式,但是關閉Notepad ++後,這些高亮會丟失。 因此,我現在的目標是製作相同的文本編輯器,但它可以保存您的工作。目前我正在研究該功能,因此當我選擇一些文本時,它將在整個文檔中搜索相同內容並突出顯示它,例如紅色背景。我添加了這一個:C#:在富文本
private void richTextBox1_SelectionChanged(object sender, EventArgs e)
{
int startIndex = 0;
while (startIndex<richTextBox1.TextLength)
{
int wordStartIndex = richTextBox1.Find(richTextBox1.SelectedText, startIndex, RichTextBoxFinds.None);
if (wordStartIndex != -1)
{
richTextBox1.SelectionStart = wordStartIndex;
richTextBox1.SelectionLength = richTextBox1.SelectionLength;
richTextBox1.SelectionBackColor = Color.Red;
}
else
break;
startIndex += wordStartIndex + richTextBox1.SelectionLength;
}
}
但它給了我「StackOverFlow」,因爲我有一個循環在這裏。你能幫我一下嗎? 我想我需要運行2個搜索來避免循環 - 一個在選擇索引之前,一個在之後。或者也許有更簡單的選擇?
謝謝大家,你們!