2012-05-22 29 views
0

我有一個RichTextBox,並且想要突出顯示整個單詞,只給出它的結束索引。是否有可能從結尾索引突出顯示,倒退到空間的第一次出現?如何突出顯示整個單詞,給出其結尾索引

這是我到目前爲止已經試過,但我不知道是否有任何其他有效的方法:

int length = richTextBox.Text.Reverse().Skip(richTextBox.Text.Length - offset) 
     .TakeWhile(x => x != ' ') 
     .Count(); 
richTextBox.Select(offset - length, length + 1); 
richTextBox.SelectionBackColor = Color.Yellow; 

回答

2

這是一個非常低效的方式來獲得的長度。

嘗試這個 - 可能是由一個地方被關閉,我不能馬上測試一下:

var prevSpace = richTextBox.Text.LastIndexOf(' ', offset); 
var length = prevSpace = -1 ? offset + 1 : offset - prevspace; 
+0

非常感謝。這樣更有效率 – user1135357