2009-11-16 17 views
7

एसक्यूएल कथन से परिणामों के साथ पूर्व परिभाषित डेटा GridView कॉलम को बांधने के लिए एक शानदार तरीका है?एसक्यूएल कथन से कॉलम के साथ डेटा ग्रिड व्यू पूर्वनिर्धारित कॉलम को कैसे बाध्य करें (नए कॉलम जोड़े किए बिना)?

उदाहरण:

dataGridView1.Columns.Add("EID", "ID"); 
dataGridView1.Columns.Add("FName", "FirstName"); 

कुछ एसक्यूएल

तरह
SELECT t.FirstName AS FName, t.EmpID AS EID 
FROM table t ... 

और फिर मैं

dataGridView1.DataSource = someDataSet.Tables[0].DefaultView; 

आखिरी कॉल मेरी datagrid में स्तंभ जोड़ने फोन, लेकिन मैं सिर्फ यह द्वारा बाध्य करने के लिए चाहते हैं कॉलम नाम नए कॉलम जोड़ने के लिए नहीं है।

उदाहरण इस तरह एक परिणाम दे देंगे:

टेबल कॉलम: आईडी, प्रथम, fName, ईआईडी

(आईडी और प्रथम रिक्त कक्षों रखती है) इस पाने के लिए कैसे:

Table columns: ID, FirstName or FirstName, ID 

सबसे अच्छा संबंध है!

+1

क्या यह एएसपी.नेट या विनफॉर्म है? –

उत्तर

1

मुझे लगता है कि DataGridView में AutoGenerateColumns संपत्ति है, है ना?

dataGridView1.AutoGenerateColumns = True; 

MSDN डॉक्स से:

सार्वजनिक bool AutoGenerateColumns {सेट; प्राप्त करें; } System.Windows.Forms.DataGridView

की

सारांश सदस्य: हो जाता है या एक मूल्य सेट का संकेत कॉलम बनाई गई हैं कि स्वचालित रूप से जब System.Windows.Forms.DataGridView.DataSource या System.Windows.Forms .DataGridView.DataMember गुण सेट हैं।

रिटर्न: सत्य अगर कॉलम स्वचालित रूप से बनाया जाना चाहिए; अन्यथा, झूठी। डिफ़ॉल्ट सच है।

संपत्ति प्रॉपर्टी विंडो पर नहीं है, हालांकि आपको इसे मेरे उदाहरण के रूप में कोड के माध्यम से सेट करना होगा।

+0

नील, डेटा की कोशिश की GridView1.AutoGenerateColumns = True; और = झूठा, लेकिन एक ही परिणाम। काम नहीं करता – Jooj

+0

क्या यह एएसपी है।नेट या WinForms? –

+0

मैं WinForms का उपयोग कर रहा हूँ। – Jooj

0

आपके ग्रिडव्यू के कॉलम टैग में कॉलम जोड़ने के बारे में कैसा है?

<Columns> 
<asp:BoundField DataField="EID" HeaderText="ID" /> 
<asp:BoundField DataField="FName" HeaderText="First name" /> 
... 
+0

धन्यवाद, लेकिन मैं Winforms का उपयोग कर रहा हूँ! – Jooj

+0

आह, क्षमा करें, मेरी गलती। – adrianos

15
गलत पर AutoGenerateColumns सेट करने से

अलावा, आप भी डेटा स्रोत में इसी क्षेत्र के लिए DataGridView में प्रत्येक स्तंभ के लिए DataPropertyName सेट करना होगा। डेटासोर्स प्रॉपर्टी सेट करने से पहले आप डिज़ाइनर या कोड में इसे सेट कर सकते हैं।

11

dataGridView1.Columns["FName"].DataPropertyName = "FName" का उपयोग करें जहां FName आपकी डेटा तालिका में कॉलम है।

+0

यह समस्या हल करता है, आपका उत्तर सही के रूप में चिह्नित किया जाना चाहिए। – Lucas

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