C# Get cursor line in RichTextBox

前端 未结 1 1940
無奈伤痛
無奈伤痛 2020-12-21 12:17

In C#, I have a RichTextBox, and I want to get the current line of the cursor. Every answer I\'ve found says to use:

int currentLine = richTextBox1.GetLineFr         


        
相关标签:
1条回答
  • 2020-12-21 13:13

    First you need to get selectionstart,If there isn't any selected text, the value returned is the position of the caret(with offset in characters from the start of the text),then you call getlinefromcharindex and pass that value,place it in the selectionchanged event and even with arrow keys moving the caret position it will update:

    private void richTextBox1_SelectionChanged(object sender, EventArgs e)
    {
        int index = richTextBox1.SelectionStart;
        int line = richTextBox1.GetLineFromCharIndex(index);
        label1.Text = "cursor at line " + line.ToString();
    }
    
    0 讨论(0)
提交回复
热议问题