मेरे पास DataGridView से डेटाटेबल बाध्य है। मेरे पास डीजीवी में पूर्ण RowSelect सक्षम है। क्या चयनित पंक्ति को डेटारो के रूप में प्राप्त करने का कोई तरीका है ताकि मैं चयनित पंक्ति के मूल्यों तक दृढ़ता से टाइप की गई पहुंच प्राप्त कर सकूं?मैं DataGridView में चयनित डेटारो कैसे प्राप्त करूं?
उत्तर
मैं यह कैसे डब्ल्यू/BindingSource oa करने के लिए यकीन नहीं है, तो यहां आपको एक साथ यह करने के लिए है:
var drv = bindingSoure1.Current as DataRowView;
if (drv != null)
var row = drv.Row as MyRowType;
आप सीधे दृढ़ता से टाइप किया पंक्ति में अपने चयनित पंक्ति कास्ट करने के लिए सक्षम होना चाहिए कि DataGridView के लिए बाध्य था।
DataRowView currentDataRowView = (DataRowView)dgv1.CurrentRow.DataBoundItem
DataRow row = currentDataRowView.Row
यह निम्न संपत्ति हो रही द्वारा संभव है: DataGridViewSelectedRowCollection:
this.dataGridView.SelectedRows
एक प्रकार का एक संग्रह प्राप्त करता है। इसमें प्रकार के आइटम शामिल हैं: DataGridViewRow।
फिर एक निम्नलिखित तरीके से लोगों को स्वयं के प्रकार के साथ bounditem प्राप्त कर सकते हैं:
DataGridViewSelectedRowCollection list = this.dataGridViewInventoryRecords.SelectedRows;
MyType selectedItem = (MyType)list[0].DataBoundItem; //[0] ---> first item
आप इस प्रयास करें।
DataRow row = gridView1.GetDataRow(gridView1.FocusedRowHandle);
if (row != null)
{
XtraMessageBox.Show(row["ID"].ToString());
}
else
return;
आप एक मेज या देखने के लिए अपने DataGridView बाध्य है एक डेटाबेस में, आप एक जोरदार टाइप वस्तु के रूप में बाहर डेटा प्राप्त कर सकते हैं।
यह उत्तर विंडोज़ फॉर्म के लिए है जो डिज़ाइन समय पर डेटासेट का उपयोग कर डेटाबेस से कनेक्ट होता है। उदाहरण का नाम डेटासेट 1 है, और उदाहरण तालिका का नाम ग्राहक_इन्फो है।
// cast the data bound item to DataRowView so you have
// access to "Row", which
// has the actual data for the row in typed fields.
DataRowView drv = dgv.SelectedRows(0).DataBoundItem as DataRowView;
// run the code and look at the debugger value of drv.Row --
// the type will be shown
// which is the type created by the data binding, representing
// your table or view
//{YourDataSetName.YourTableOrViewType} tmpTableData = drv.Row as {YourDataSetName.YourTableOrViewType};
DataSet1.Customer_InfoRow tmpTableData = drv.Row as DataSet1.Customer_InfoRow;
यह लिंक उत्तर है। मुझे उम्मीद है कि मैंने स्पष्टता और ऊपर एक उदाहरण जोड़ा है। https://social.msdn.microsoft.com/Forums/windows/en-US/f252e395-58e6-4703-ba7b-0740efcbecf3/can-i-convert-the-selected-row-in-a-bound-datagridview-to-a-typed-datarow?forum=winformsdatacontrols
यह लिंक डेटा स्रोत में डेटा प्रोग्रामेटिक रूप से जोड़ा गया डेटा दिखाता है, जो उस डेटा को किसी मौजूदा डेटाबेस से नहीं खींचता है। इससे मुझे जवाब के रास्ते का हिस्सा मिला: https://msdn.microsoft.com/en-us/library/4wszzzc7(v=vs.110).aspx
डेटासेट के अंदर कोई टेबलडैप्टर उपयोग नहीं किया जा रहा है, तो डेटाग्रिडव्यू तक दृढ़ता से टाइप करना संभव नहीं है।
जब एक DataGridView एक bindingsource के माध्यम से एक datatable के लिए बाध्य है दृढ़ता से चर टाइप किया की पहुंच है, के रूप में पालन करने के लिए:
एक नया प्रोजेक्ट बनाएँ।
डीएस 1 नामक डेटासेट डालें और डेटाटेबल नामित डेटाटेबल नामक कॉलम के साथ डेटाकॉल 1 और डेटा कॉलम 2 नामक कॉलम के साथ डालें।
मुख्य फार्म के लिए एक DataGridView जोड़ें और dt99 को यह बाँध
ताकि dt99BindingSource DataGridView और datatable
जोड़ता है चयन परिवर्तन के लिए जोड़ें और ईवेंट हैंडलर DataGridView, और कोड
निजी शून्य dataGridView1_SelectionChanged (वस्तु प्रेषक, EventArgs ई) {
ds1.dt99Row d= ((ds1.dt99Row)((DataRowView)dt99BindingSource.Current).Row);
Debug.WriteLine(d.DataColumn1 + " " + d.DataColumn2);
}
अब आप दृढ़ता से टाइप किया है चर (d.DataColumn1 और घ का निम्न भाग सम्मिलित DataColumn2) डेटाग्रिडव्यू
पर चयनित कोशिकाओं तक पहुंचने के लिए एक और दिलचस्प विशेषता यह है कि डेटासेट के अंदर डाली गई एक डाटाटेबल सार्वजनिक कक्षाओं का एक सेट प्रदान करती है जो बहुत मदद करती है डेटाटेबल्स को संभालने पर, उदाहरण के लिए
private void Form1_Load(Object sender, EventArgs e)
{
ds1.dt99.Adddt99Row("K", "B");
ds1.dt99.Adddt99Row("L", "D");
ds1.dt99.Adddt99Row("M", "F");
ds1.dt99.Adddt99Row("N", "H");
ds1.dt99Row dr = ds1.dt99.Newdt99Row();
dr.DataColumn1 = "X";
dr.DataColumn2 = "Y";
ds1.dt99.Adddt99Row(dr);
}
- 1. मैं DataGridView में एक पंक्ति से DataRow कैसे प्राप्त करूं
- 2. मैं DataGridView में सभी चयनित कक्षों का मूल्य कैसे प्राप्त कर सकता हूं?
- 3. मैं कंबोबॉक्स से चयनित आइटम कैसे प्राप्त करूं जो डाटाटेबल
- 4. जावा - मैं जेएलिस्ट से सभी चयनित मूल्य कैसे प्राप्त करूं?
- 5. सी # WinForms DataGridView - लगातार पंक्ति चयनित!
- 6. मैं DataGridView में वर्तमान सेल स्थिति x और y कैसे प्राप्त करूं?
- 7. सी # - DataGridView और SelectedCells - चयनित सेल
- 8. WinForms - DataGridView - कोई सेल चयनित नहीं
- 9. मैं वर्तमान में चयनित नोड का पाठ jstree में कैसे प्राप्त करूं?
- 10. मैं एंड्रॉइड लिस्ट व्यू में चयनित आइटम कैसे स्टाइल करूं?
- 11. मैं चयनित आइटम को QListWidget में कैसे सेट करूं?
- 12. मैं एक्सेस में चयनित पंक्तियों का उपयोग कैसे करूं?
- 13. मैं ग्रहण में स्केलेटेस्ट कैसे प्राप्त करूं?
- 14. मैं हास्केल में कॉलस्टैक कैसे प्राप्त करूं?
- 15. मैं जावा में HTTP कैसे प्राप्त करूं?
- 16. मैं सी # में% LocalAppData% कैसे प्राप्त करूं?
- 17. मैं जावास्क्रिप्ट दस्तावेज़ का उपयोग कर एचटीएमएल में चयनित पाठ के समन्वय कैसे प्राप्त करूं .getSelecttion()
- 18. WPF टैब नियंत्रण: मैं वर्तमान में चयनित टैब कैसे प्राप्त करूं?
- 19. मैं Django अनुरोध में सभी चयनित चेकबॉक्स के मान कैसे प्राप्त करूं? POST?
- 20. मैं UIImagePickerControllerReferenceURL से डेटा कैसे प्राप्त करूं?
- 21. DataGridView
- 22. एक DataGridView
- 23. मैं एक और गतिविधि में एक चर कैसे प्राप्त करूं?
- 24. DataGridView
- 25. DataGridView में ऑटोस्कोल को कैसे कार्यान्वित करें?
- 26. WPF ListView - मैं चयनित आइटम पृष्ठभूमि रंग कैसे सेट करूं?
- 27. संदेशबॉक्स में DataGridView सेल मान कैसे प्राप्त करें?
- 28. मैं dijit.layout.TabContainer के साथ चयनित टैब कैसे निर्दिष्ट करूं?
- 29. मैं टिंकर टेक्स्ट बॉक्स से एक चयनित स्ट्रिंग कैसे प्राप्त करूं?
- 30. मैं छवि एडाप्टर के साथ ग्रिडव्यू से चयनित आइटम कैसे प्राप्त करूं? (एंड्रॉइड)
एचएम ... मेरे लिए चयनित पंक्ति में «DataBoundItem» शून्य है। –
@ हाय-एंजेल आप डेटा बाइंडिंग का उपयोग नहीं कर रहे हैं, फिर। – stuartd