按下键时,TextBox CaretIndex位置错误

时间:2016-11-18 11:30:31

标签: c# wpf textbox

我有两个TextBox多行:

FirstTextBox.Text =

123456789 abcd
123456789
123456789 abcd

SecondTextBox.Text =

123456789 abcd
123456789 abcd
123456789 abcd

我有PreviewKeyDown的{​​{1}}代码:

FirstTextBox

标签有效,更改private void FirstTextBox_PreviewKeyDown (object sender, System.Windows.Input.KeyEventArgs e) { if (e.Key == System.Windows.Input.Key.Tab) { newPos = int (...) // Calculate caret position in line          SecondTextBox.Focus (); SecondTextBox.CaretIndex = newPos; e.Handled = true; } } 没问题,但是当按下第二个TextBox时,按键开始行。

当向左或向右按​​下键时,TextBox“记住位置”,下次更改后的插入符TextBox并更改为按下的线键,插入符号位置为旧插入符号设置为按键左键或者正确

我的问题: 如何在TextBox中将“记住位置”设置为“记住SecondTextBox中的位置”。

我认为“记住位置”是像素值,因为在FirstTextBox

TextBox.Text

按下键或向上键,插入符号是相同的位置(行中不是相同的字符索引)。

0 个答案:

没有答案