在.NET中,您可以使用GetLineFromCharIndex和SelectionStart轻松
获取Text
Box的光标位置的行号(即“当前行”):
var currentLine = textBox1.GetLineFromCharIndex(textBox1.SelectionStart);
是否有“干净/原生”方式将光标设置在文本框的给定行中(即设置“当前行”)?或者至少是一种“干净/原生”的方式来获取给定行的第一个字符的char索引(类似于getCharIndexFromLine,与之前放置的函数相反)?
一种方法是迭代遍历TextBox的Lines属性的前N-1个元素,并将它们的长度加上换行符的长度相加.还有其他想法吗?
有一个GetFirstCharIndexFromLine()
函数可用:
int myLine = 3;
int pos = textBox1.GetFirstCharIndexFromLine(myLine);
if (pos > -1) {
textBox1.Select(pos,0);
}