我有一個TextBox
程序,當我得到一個空間輸入時,我需要編輯文本。找到並設置指標在文本框中的位置
所以我這樣做了,但隨後指標返回到文本的開頭,這不是一個好的MMI。
我想知道是否有方法可以在不更改指示燈位置的情況下編輯文本,或者是否有辦法在TextBox
中設置指示燈位置?
我試過用幾種方式編輯文本,但它們都導致指示符回到文本的開頭。
我找不到影響指標位置的方法,所以我猜這是不可能的,但我可能是錯的。
請大家幫忙。
我有一個TextBox
程序,當我得到一個空間輸入時,我需要編輯文本。找到並設置指標在文本框中的位置
所以我這樣做了,但隨後指標返回到文本的開頭,這不是一個好的MMI。
我想知道是否有方法可以在不更改指示燈位置的情況下編輯文本,或者是否有辦法在TextBox
中設置指示燈位置?
我試過用幾種方式編輯文本,但它們都導致指示符回到文本的開頭。
我找不到影響指標位置的方法,所以我猜這是不可能的,但我可能是錯的。
請大家幫忙。
嘗試設置選擇。這將設置光標到第5位,但選擇什麼:
textBox1.Select(5, 0);
只要確保這是控制權返回給用戶之前,發生這種情況的最後一件事。如有必要,可能伴隨着致電Focus
。
對於您的情況,您還需要跟蹤該位置應該是......在添加/修改文本之前?之後呢?只需用該號碼替換5
即可。
試試這個。
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);
希望它有幫助。