2009-11-16 18 views
7

Önceden tanımlanmış dataGridView sütunlarını bir SQL ifadesinden elde edilen sonuçlarla bağlamak için zarif bir yol var mı?Nasıl dataGridView sütunları ile sql deyiminden sütunları (yeni sütun eklemeden) bağlanır?

Örnek:

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

Bazı SQL sonra

SELECT t.FirstName AS FName, t.EmpID AS EID 
FROM table t ... 

ve

gibi

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

son çağrı benim datagrid'e sütun eklemek diyoruz ama sadece bunu bağlamak istiyorum sütun adı yeni sütun eklemem.

örnek şöyle bir sonuç verecektir:

Tablo sütunlar: Kimlik, Ad, FName, EID

(ID ve Ad boş hücreleri tutan) bu almak için:

Table columns: ID, FirstName or FirstName, ID 

Saygılarımızla!

+1

Bu ASP.NET veya WinForms mı? –

cevap

1

DataGridView'ın bir AutoGenerateColumns özelliği olduğunu düşünüyorum, öyle değil mi? MSDN Dokümanlar

dataGridView1.AutoGenerateColumns = True; 

:

public bool AutoGenerateColumns {set; olsun; } Üye Özet

System.Windows.Forms.DataGridView

ait: Alır veya sütun oluşturulan olup olmadığını gösteren bir değeri ayarlar otomatik olarak System.Windows.Forms.DataGridView.DataSource veya System.Windows.Forms .DataGridView.DataMember özellikleri ayarlanmıştır.

İadeler: sütunlar otomatik olarak oluşturulmalı; aksi halde yanlış. Varsayılan değer doğrudur.

Özellik Properties (Özellikler) penceresinden değil, örneğimde olduğu gibi kodu kullanarak ayarlamanız gerekir.

+0

Neil, veriyi denediGridView1.AutoGenerateColumns = True; ve = false, ancak aynı sonuç. Çalışmıyor. – Jooj

+0

Bu ASP.NET veya WinForms? –

+0

WinForms kullanıyorum. – Jooj

0

Şebeke görünümünüzün Sütunlar etiketine sütun eklemek nasıl yapılır? false AutoGenerateColumns ayarlanmasından Kenara

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

Teşekkürler, ancak winforms kullanıyorum! – Jooj

+0

ah, pardon, hatam. – adrianos

15

, ayrıca veri kaynağında karşılık gelen alana DataGridView her sütun için DataPropertyName ayarlamanız gerekir. Bunu, DataSource özelliğini ayarlamadan önce tasarımcıda veya kodda ayarlayabilirsiniz.

11

dataGridView1.Columns["FName"].DataPropertyName = "FName" kullanın FName veri tablonuzdaki sütun.

+0

Bu, sorunu çözer, cevabınız doğru olarak işaretlenmelidir. – Lucas