WPF

2010-10-15 30 views
6

'de backspace anahtarı nasıl engellenir Backspace-Key'i bir WPF-Uygulamasında olabildiğince kolay nasıl yasaklayabilirim?WPF

KeyDown-Event, DEL ve Backspace-Key'de yakalanmaz.

Teşekkür ederiz!

cevap

14

İptal etmek için Geri tuşuna veya basılan diğer tuşa basmak için "PreviewKeyDown" olay işleyicisini kullanmayı deneyin.

<TextBox PreviewKeyDown="textBox1_PreviewKeyDown" ... 

ve kodunuzda

, böyle bir olay işleyicisi tanımlayın:: En Xaml olarak

, böyle nitelik PreviewKeyDown set

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

Hop yardımcı olur :)

+0

Evet, çok teşekkür ederim :-)! – Ueli

0

OnTextInput(...)'u geçersiz kılmayı deneyin.

Ardından, if(args.Text == "\b") arka alanı size vermelidir.

+0

O WPF Uygulaması için .NET 4.0'da bulunmuyor :-( – Ueli

+0

@Xarem, ancak bunu http://msdn.microsoft.com/en-us/library/system.windows.uielement.ontextinput.aspx adresine bakın. Alt sınıflandırma değil misiniz? Pencere sınıfı? –