Как запретить клавишу возврата в WPF - PullRequest
6 голосов
/ 15 октября 2010

Как я могу максимально просто запретить клавишу Backspace в приложении WPF?

Событие KeyDown не перехватывает DEL и клавишу Backspace.

Спасибо!

Ответы [ 2 ]

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

Чтобы обработать клавишу Backspace или другую нажатую клавишу, чтобы отменить ее, попробуйте использовать обработчик события PreviewKeyDown.

В вашем Xaml установите атрибут PreviewKeyDown следующим образом:

<TextBox PreviewKeyDown="textBox1_PreviewKeyDown" ...

и в вашем коде определите обработчик событий следующим образом:

private void textBox1_PreviewKeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Back || e.Key == Key.Delete)
    {
        e.Handled = true;
    }
}

Хмель, который помогает:)

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

Попробуйте переопределить OnTextInput(...).

Тогда if(args.Text == "\b") даст вам возврат.

...