我有一个程序TextBox
,当我获得空间输入时,我需要编辑文本。
所以我这样做了,但随后指示器又回到了文本的开头,这不是一个好的 MMI。
我想知道是否有办法在不改变指示器位置的情况下编辑文本,或者有没有办法在TextBox
?
我尝试以多种方式编辑文本,但它们都导致指示器回到文本的开头。
我找不到影响指示器位置的方法,所以我猜这是不可能的,但我可能错了。
请帮忙。
尝试这个。
int startPosition = textBox1.SelectionStart;
int selectionLength = textBox1.SelectionLength;
//do what ever you need
textBox1.Text = textBox1.Text.ToUpper();
//place cursor back in position
textBox1.Select(startPosition, selectionLength);
希望能帮助到你。
尝试设置选择。这会将光标设置到第 5 个位置,但不选择任何内容:
textBox1.Select(5, 0);
只需确保这是在将控制权返回给用户之前发生的最后一件事。Focus
如有必要,也许伴随着一个电话。
在您的情况下,您还需要跟踪该位置应该是什么......在添加/修改文本之前?之后呢?换成5
那个号码就行了。