1
在C#中,我有一个RichTextBox,我想获得光标的当前行。我发现每一个答案说,使用:C#获取光标线的RichTextBox
int currentLine = richTextBox1.GetLineFromCharIndex(richTextBox1.SelectionStart);
然而,richTextBox1.SelectionStart只有更新时,您更改文本。如果用箭头键移动光标,它不会更新(我通过在移动时打印SelectionStart来验证此问题)。
我如何获取光标的当前行,在其跟踪的方式,即使你使用箭头键移动光标?
我使用Win8的VS2012。
编辑: terrybozzio的回答显示的问题。对于有此问题的其他人,您不能将代码放入richTextBox1_TextChanged中。你需要把它放在richTextBox1_SelectionChanged中。
在什么情况下您调用该方法? – keyboardP
当我移动箭头键时,我能够看到选择开始更改。 –
你不能把支票放在keydown事件中吗?然后当你用箭头键移动它时,它会更新。 – Nick3