【发布时间】:2010-08-17 23:30:05
【问题描述】:
我想将插入符号移动到当前插入符号右侧的 4 个位置。我注册了PreviewKeyDown,并在捕获tab键时调用InsertTextInRun(),如下所示:
private void rtb_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Tab)
{
rtb.CaretPosition.InsertTextInRun(" ");
e.Handled = true;
}
}
问题是在调用InsertTextInRun() 之后插入符号仍然存在。它确实不移动到新文本的末尾,这是我想要的行为。我该怎么做?
顺便说一句 - 是的,我知道 RichTextBox 上的 AcceptsTab 属性。我选择忽略 is 并滚动我自己的选项卡功能,因为使用 AcceptsTab 进行选项卡具有令人讨厌的副作用,即在后续行中缩进文本,这不是我想要的。
【问题讨论】:
标签: wpf richtextbox