我有一个文本框,其中已经显示了一个字符串。 将光标移到我正在做的文本框
txtbox.Focus();
但是如何将光标放在文本框中字符串的末尾?
答案 0 :(得分:96)
对于Windows窗体,您可以使用txtbox.SelectionStart
和txtbox.SelectionLength
属性控制光标位置(和选择)。如果您想将插入符号设置为结束,请尝试以下操作:
txtbox.SelectionStart = txtbox.Text.Length;
txtbox.SelectionLength = 0;
对于WPF,请参阅this question。
答案 1 :(得分:63)
有多种选择:
txtBox.Focus();
txtBox.SelectionStart = txtBox.Text.Length;
OR
txtBox.Focus();
txtBox.CaretIndex = txtBox.Text.Length;
OR
txtBox.Focus();
txtBox.Select(txtBox.Text.Length, 0);
答案 2 :(得分:9)
您可以使用TextBox.CaretIndex设置插入位置。如果你唯一需要的是将光标设置在末尾,你可以简单地传递字符串的长度,例如:
txtBox.CaretIndex=txtBox.Text.Length;
您需要将插入符号索引设置为长度,而不是长度为1,因为这会将插入符号放在最后一个字符之前。
答案 3 :(得分:1)
尝试如下......它会帮助你......
窗口表单Focus()
中的某些时间无效。因此,您可以使用Select()
来关注文本框。
txtbox.Select(); // to Set Focus
txtbox.Select(txtbox.Text.Length, 0); //to set cursor at the end of textbox