c# - DataGridView shows some empty cells in first row after update -
मेरा DataGridView एक बाध्यकारी स्रोत के लिए बाध्य है जो फिर से < कोड> डाटासेट जैसा इसकी डेटासॉर्स है। संबंधित TableAdapter में DataSet में, दूसरों के बीच, एक भरें विधि जो एक एक्सेस डाटाबेस से डेटा प्रदान करती है। मैं अपने DataGridView को नीचे दिखाए गए डेटा के साथ भरता हूं:
myTableAdapter.Fill (myDataSet.MyDataTable); यह सब काम ठीक और जैसा अपेक्षित है समस्या तब होती है जब मैं अपने UpdateQuery (जो भी ठीक काम करता है) का उपयोग करते हुए अपना डेटा बदलता हूं और उसके बाद मेरे DataGridView में से किसी भी पंक्ति में फिर से क्लिक करें - जैसे ही मैं क्लिक करता हूं, (हमेशा) की अंतिम दो कोशिकाओं पहली पंक्ति को खाली के रूप में दिखाया गया है कोई फर्क नहीं पड़ता कि मैं किस पंक्ति को क्लिक करता हूं, यह हमेशा पहली पंक्ति में कक्ष होता है और केवल जब मैं UpdateQuery करता हूं
जब मैं सीधे प्रवेश डेटाबेस की जांच करता हूं, तो सब कुछ ठीक है (यानी अपडेट सफल हुआ)। जब मैं अपने आवेदन को पुनरारंभ करता हूं, तो सब कुछ किसी भी समस्या के बिना दिखाई देता है (अगली बार जब तक मैं UpdateQuery कॉल करता हूं और मेरे DataGridView में क्लिक नहीं करता हूं)।
I कॉल करने के लिए DataTable` - कुछ भी नहीं बदला। एंडएडिट () `` और रिफ़्रेश करें डेटाग्रिड दृश्य और कॉलिंग स्वीकार करें दोनों DataSet < कोड> और संबंधित
अपडेट
वर्णित व्यवहार केवल अपडेट 2 अद्यतन 2 < / Strong> समस्या भी तब होती है जब मैं विभिन्न ईवेंट हैंडलर्स का उपयोग करता हूं - मूलतः मैंने ऐसा लगता है कि "बस" का प्रदर्शन मेरा डेटा काम नहीं करता है, मुझे क्या याद आ रहा है? मेरे सारे UpdateQuery < CellClick का उपयोग किया था, मैंने भी CellContentClick और CellMouseClick । यह तब भी होता है जब मैं माउस का उपयोग बिल्कुल नहीं करता, लेकिन DataGridView के भीतर नेविगेट करने के लिए कीबोर्ड का उपयोग करें। DataGridView से मेरे त्रुटि के कारण मैं अपने फार्म में उपयोग कर रहा हूं, चाहे कितना सरल या जटिल डेटा मैं पूछता / अद्यतन कर रहा हूं।
तो यह TextBox.Clear () विधि का कुछ बुरा व्यवहार हो गया। मैं नीचे अधिक जानकारी जोड़ता हूं कि मुझे अपना प्रश्न पोस्ट करते समय आवश्यक समझा नहीं था:
मेरे DataGridView के अंतर्गत मेरे पास कुछ डाटाबेस है Textbox नियंत्रण - डाटाबेसिंग
txtSomeId.DataBindings.Add ("टेक्स्ट", myDataGridView.DataSource, "ID") की तरह परिभाषित किया गया था; UpdateQuery विधि को कॉल करने के बाद मैंने डेटा को फिर से लोड किया (ठीक) और फिर उन Textbox नियंत्रणों की सामग्री को साफ़ कर दिया:
<प्री> txtSomeId.Clear (); के अनुसार, यह विधि
"पाठ बॉक्स से सारी सामग्री को साफ़ करता है।"
यह यह पृष्ठ सभी जानकारी प्रदान करता है कोड की उन पंक्तियों को निकालना, अपेक्षित सभी काम करता है और कोई और समस्याएं नहीं हैं।
यह साफ़ करें विधि को कॉल करने का भी अर्थ है कि डेटाबेस को आंशिक रूप से हटा दिया जाता है (?) हटाया जाता है I उम्मीद नहीं थी।
मैंने "आंशिक रूप से" लिखा था क्योंकि बाध्यकारी अभी भी DataGridView और TextBox नियंत्रणों में अन्य पंक्तियों के लिए काम करती है, बस पहले के लिए नहीं ( और यहां केवल कुछ कक्षों के लिए)। यह मेरी राय में बहुत अजीब व्यवहार है, शायद कोई और इस पर कुछ और प्रकाश डाल सकता है।
Comments
Post a Comment