2016-05-13 176 views
0

我想突出显示整行,从开始到结束无论字符是否存在均无关紧要,行可能为空,但应突出显示整行。突出显示RichTextBox中的整行


enter image description here

+0

您需要知道WordWrap是打开还是关闭。 – TaW

+0

http://www.codeproject.com/Questions/166848/richTextbox-Highlight-complete-line – CodeCaster

+0

它会很好。 – Kamlesh

回答

0

这将突出显示在RichTextBox全线如果WordWrap熄灭:

void highLightALine(RichTextBox rtb, int line, Color hiLight) 
{ 
    int i1 = rtb.GetFirstCharIndexFromLine(line); 
    int i2 = rtb.GetFirstCharIndexFromLine(line + 1); 
    if (i2 < 0) i2 = rtb.Text.Length; 

    rtb.SelectionStart = i1; 
    rtb.SelectionLength = i2 - i1; 
    rtb.SelectionBackColor = hiLight; 
} 

注意,如果WordWrap是真的,那将仍然突出线,但只到它是可见的。它在下一行的延续不会改变。

另请注意,只有Text可以突出显示。 空的空间不能突出显示 afaik。 Here是一个尝试绘制RTB子类的示例..

+0

我想突出整个行甚至空的空间。 – Kamlesh