WPF

2010-10-15 9 views
6

में बैकस्पेस कुंजी को कैसे रोकें I WPF-Application में जितना संभव हो सके बैकस्पेस-कुंजी को कैसे रोक सकता हूं?WPF

कुंजीडाउन-ईवेंट DEL और बैकस्पेस-कुंजी पर नहीं पकड़ता है।

धन्यवाद!

उत्तर

14

इसे रद्द करने के लिए बैकस्पेस या अन्य दबाए गए कुंजी को संभालने के लिए, "पूर्वावलोकनकेडाउन" ईवेंट हैंडलर का उपयोग करने का प्रयास करें।

अपने 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

हां, बहुत बहुत धन्यवाद :-)! – Ueli

0

OnTextInput(...) ओवरराइड करने का प्रयास करें।

फिर if(args.Text == "\b") आपको बैकस्पेस देना चाहिए।

+0

कि एक WPF अनुप्रयोग के लिए .NET 4.0 में मौजूद नहीं है :-( – Ueli

+0

@Xarem, लेकिन ऐसा करता है। http://msdn.microsoft.com/en-us/library/system.windows.uielement.ontextinput.aspx देखें। क्या आप एक subclassing नहीं कर रहे हैं खिड़की वर्ग? –

संबंधित मुद्दे

 संबंधित मुद्दे