C#的textbox,我想把光标定位在textbox的第i行,该怎么写呀?
展开全部
private void button1_Click(object sender, EventArgs e)
{
//测试数据
string a = "abcdefgh\r\n11111111\r\n11111111\r\n11111111\r\n11111111\r\n";
this.textBox1.Text = a.ToString();
this.textBox1.Focus(); //让textbox获得焦点
this.textBox1.Select(5, 0); //焦点开始的位置,第一个是参数下标,第二个0就可以了
}
这个我已经测试过了,你可以试试。应该没有问题
{
//测试数据
string a = "abcdefgh\r\n11111111\r\n11111111\r\n11111111\r\n11111111\r\n";
this.textBox1.Text = a.ToString();
this.textBox1.Focus(); //让textbox获得焦点
this.textBox1.Select(5, 0); //焦点开始的位置,第一个是参数下标,第二个0就可以了
}
这个我已经测试过了,你可以试试。应该没有问题
追问
这不是第几行,这是第一行的第5个字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
textbox有个Lines属性
找到第n行
比如字符串开始是:"恭喜你awenhao。。。。。。"
那么请在Text属性.IndexOf("\r\n恭喜你awenhao")
然后 SelectionStart = 这个位置
至于更准确的定位 你自己考虑考虑
思路完全没错
当然也可以 Lines属性,比如定位16行
统计一下前15行的总长度,别忘了换行符长度。
找到第n行
比如字符串开始是:"恭喜你awenhao。。。。。。"
那么请在Text属性.IndexOf("\r\n恭喜你awenhao")
然后 SelectionStart = 这个位置
至于更准确的定位 你自己考虑考虑
思路完全没错
当然也可以 Lines属性,比如定位16行
统计一下前15行的总长度,别忘了换行符长度。
更多追问追答
追问
SelectionStart = 这个位置
的代码是什么?
追答
应该是有几个属性吧,SelectionStart 还是SelectedIndex。我不记了,因为我现在主要负责项目设计,带队了。还有一个SelectedLength表示选中的字符个数。
我的这个位置 意思是个变量。
int pos = xxxx; //计算出来的位置
textBox.SelectionStart = pos;
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询