से नियंत्रण वर्णों को हटा रहा है मेरे पास डेटा ग्रिड वाला एक WPF विंडो है। मैं एक प्रतीक स्कैनर से कैप्चर करने की कोशिश कर रहा हूं, एक स्ट्रिंग जिसे वर्चुअल वेज के माध्यम से भेजा जा रहा है। एप्लिकेशन के लिए ऐसा लगता है कि वर्ण टाइप किए गए थे। यह स्ट्रिंग ASCII 1 (SOH) से शुरू होती है।डेटाग्रिड पूर्वावलोकनTextInput ईवेंट इनपुट
जब खिड़की पर ध्यान केंद्रित किया गया है विंडो के पूर्वावलोकन टेक्स्टक्स्टपुट को अन्य सभी मानव पठनीय और गैर-मानव पठनीय मूल्यों के साथ एसओएच प्राप्त होता है। हालांकि, जब डेटाग्रिड ने गैर-मानव पठनीय पात्रों पर ध्यान केंद्रित किया है तो उन्हें हटा दिया गया है।
यदि मेरे पास विंडो पर पूर्वावलोकनकेडडाउन या पूर्वावलोकनकेप है तो अक्षरों को ठीक से दिखाई देने पर कोई फर्क नहीं पड़ता। तो कहीं भी डेटा ग्रिड इसे बाहर स्ट्रिप्स के साथ। दुर्भाग्यवश क्योंकि KeyDown/KeyUp ASCII वर्ण नहीं दिखाता है, मैं इन घटनाओं का उपयोग कुछ प्रकार के पार्सिंग एल्गोरिदम लिखने के बिना नहीं कर सकता।
क्या कोई मुझे बता सकता है कि मैं उन गैर-मानव पठनीय नियंत्रण वर्णों को हमेशा पूर्वावलोकनTextInput पर भेजने के लिए क्या कर सकता हूं? या पूर्वावलोकनकिडाउन में सभी पात्रों को कैसे पार्स करें?
संपादित:
खिड़की ध्यान केंद्रित है जब:
Window PreviewKeyDown - LeftCtrl
Window PreviewKeyDown - A
Window PreviewTextInput - <SOH>
Window PreviewKeyDown - Oem6
Window PreviewTextInput - ]
Window PreviewKeyDown - LeftShift
Window PreviewKeyDown - C
Window PreviewTextInput - C
जब डेटा ग्रिड ध्यान केंद्रित किया है:
Window PreviewKeyDown - LeftCtrl
DataGrid PreviewKeyDown - LeftCtrl
Window PreviewKeyDown - A
DataGrid PreviewKeyDown - A
Window PreviewKeyDown - Oem6
DataGrid PreviewKeyDown - Oem6
Window PreviewTextInput - ]
Window PreviewKeyDown - LeftShift
DataGrid PreviewKeyDown - LeftShift
Window PreviewKeyDown - C
DataGrid PreviewKeyDown - C
Window PreviewTextInput - C
मेरा उत्तर के बारे में कोई सोचा? क्या इसने सहायता की? – Alan