Я хочу момент, когда ключ "вниз" в событии PreviewKeyDown в WPF - PullRequest
0 голосов
/ 13 октября 2010

когда я прыгаю в 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
    }

}

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

alt text

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

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

Ответы [ 2 ]

1 голос
/ 13 октября 2010

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

0 голосов
/ 13 октября 2010

Именно поэтому он называется PreviewKeyDown ... требуемое событие, вероятно, KeyDown или TextChanged

...