PreviewKeyDown にジャンプすると、RichTextBox のキャレットの右側にある char はまだ移動されません。私はこのイベントに言いたいのですが、あなたのものは文字を右側に移動し、それから私に私のことをさせてください。どうやってやるの?
private void RTB_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Space)
{
// event do your stuff
// Char righthanded from the Caret position is moved to the right side
// do MY stuff
}
}
更新:私が話していることを知っていること... =>
キャレットは「Harold...」という単語の直前にあり、スペースキーを数回押して「Harold...」を右に移動しました。しかし、黒い下線の書式設定が動かないようです...どうすれば、「Harold...」という名前を含む Run オブジェクトに下線を付けたままにできますか?
KeyDown イベントでスペースバー キーをキャッチしたかった理由は、新しい暗黙的に作成された Run オブジェクトを取得し、黒い下線を削除するためです。