在文本框的任何文本的末尾设置光标
我有一个文本框,显示的string已经在其中。 把光标移到文本框我已经在做了
txtbox.Focus();
但是,如何获得文本框中的string末尾的光标?
您可以使用txtbox.SelectionStart
和txtbox.SelectionLength
属性控制光标位置(和select)。 如果你想设置插入符号结束尝试这个:
txtbox.SelectionStart = txtbox.Text.Length -1 // add some logic if length is 0 txtbox.SelectionLength = 0
对于WPF看到这个职位 。
有多种select:
txtBox.Focus(); txtBox.SelectionStart = txtBox.Text.Length;
要么
txtBox.Focus(); txtBox.CaretIndex = txtBox.Text.Length;
要么
txtBox.Focus(); txtBox.Select(txtBox.Text.Length, 0);
您可以使用TextBox.CaretIndex设置插入位置。 如果你只需要把游标设置在最后,你可以简单地传递string的长度,例如:
txtBox.CaretIndex=txtBox.Text.Length;
您需要设置长度不是长度的脱字号索引,因为这会将脱字符放在最后一个字符之前。
像下面的尝试…它会帮助你…
窗体Focus()
中的某些时间无法正常工作。 所以你可以使用Select()
来更好地对文本框进行聚焦。
txtbox.Select(); // to Set Focus txtbox.Select(txtbox.Text.Length, 0); //to set cursor at the end of textbox