在文本框的任何文本的末尾设置光标

我有一个文本框,显示的string已经在其中。 把光标移到文本框我已经在做了

txtbox.Focus(); 

但是,如何获得文本框中的string末尾的光标?

您可以使用txtbox.SelectionStarttxtbox.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