Я хочу момент, когда ключ "вниз" в событии PreviewKeyDown в WPF

Когда я прыгаю в PreviewKeyDown, символ справа от каретки в моем RichTextBox не перемещается ДА. Я хотел бы сказать, что на этом мероприятии ваши вещи перемещают персонажа в правую сторону, и ТОГДА позвольте мне делать МОИ вещи. Как я могу это сделать?

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
    }

}

ОБНОВЛЕНИЕ: что вы знаете, о чем я говорю... =>

альтернативный текст

Карет находился прямо перед словом "Гарольд...", затем я несколько раз нажал клавишу пробела, чтобы переместить "Гарольд..." вправо. Но кажется, что форматирование черного подчеркивания застряло... как сделать так, чтобы подчеркивание оставалось присоединенным к объекту Run, содержащему имя "Гарольд..."?

Причина, по которой я хотел поймать клавишу пробела в событии KeyDown, состоит в том, чтобы получить новый неявно созданный объект Run и удалить черное подчеркивание.

2 ответа

"Предварительный просмотр" события запускаются до того, как событие произойдет. Будет эквивалент KeyDown событие, которое запускается после обработки события. Вместо этого подключитесь к этому событию, и ваш код будет запущен после того, как WPF завершит обработку нажатия клавиши.

Вот почему он называется PreviewKeyDown... событие, которое вы хотите, вероятно, KeyDown или TextChanged

Другие вопросы по тегам