2016-08-22 15 views
0

私は変数を持っています、それは5と言うことができますし、私のRichTextBox1で行番号5を "青"で強調したいと思います。それはまったく可能ですか?RichTextBox1の行を強調表示するには、行番号=変数

または私はリストボックスのようなものを使用する必要があり、DataGridViewのなど

enter image description here

+1

このWPFまたはWindowsフォームまたはWindowsはユニバーサルですか? –

+0

これが可能な場合はこれが可能です。あなたが試したことを私たちに見せてもらえますか?また、簡単なGoogle検索を行うと、あなたは答えのトンを見つけるでしょう.. http://stackoverflow.com/questions/14765947/highlight-specific-text-in-richtextbox – MethodMan

+0

はいそれはWindowsフォームアプリケーションです、これまで私は持っていない何か本当に試してみてください私はC# –

答えて

0

WordWrap場合、これはRichTextBoxに与えられた行のテキストをハイライト表示しますオフになっている。

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

ありがとう、私は試してみます:) –

+0

私は "richTextBox1"というRichTextBoxの名前を "rtb"に置き換えるべきですか? –

+0

私はこのvoid highLightALine(RichTextBox richTextBox1、int line、Color hiLight)を試しました。 { richTextBox1.SelectionStart = 5; richTextBox1.SelectionLength = 6; richTextBox1.SelectionBackColor = hiLight; } –

関連する問題