我想把插入符号4个位置移动到我的插入符号所在的位置.我已注册PreviewKeyDown,并InsertTextInRun()在捕获tab键时调用,如下所示:
private void rtb_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Tab)
{
rtb.CaretPosition.InsertTextInRun(" ");
e.Handled = true;
}
}
Run Code Online (Sandbox Code Playgroud)
问题是在拨打电话后,插入符号保持不变InsertTextInRun().它并没有移动到新的文字,这是我想要的行为结束.我该怎么做?
暂且不说 - 是的,我知道AcceptsTab房产RichTextBox.我选择忽略is并滚动我自己的标签功能,因为tabbing具有AcceptsTab在后续行上缩进文本的令人讨厌的副作用,这不是我想要的.