2011-04-05 64 views
5

如下圖所示,我創建了一個equip.List列表,希望列名更具描述性 - 是否可以在equip.properties中使用一個屬性?如何爲綁定到List的dataGridView設置columnNames <T>?

DataGridView.Datasource = EquipList; 

List<equip> EquipList = new List<equip>(); 

public class equip 
{ 
public int EquipID {get;set;} 
public string EquipName {get;set;} 
} 

好吧,也許我沒有解釋自己正確的......我希望有可能被應用於像一個屬性....

[Alis("name I would like to see in the gridview")] 
public int EquipID {get;set;} 

如果不是我會只是堅持用老累方式

對當天上午晚些時候....

我知道了!

using System.ComponentModel; 

[DisplayName("the nice name")] 
public int EquipID {get;set;} 
+0

dataGridView1.Columns [1] .Name =「Equipment Name」;這應該在應用綁定後起作用。的WinForms? – 2011-04-05 12:07:07

回答

18

該工程..

using System.ComponentModel; 

List<equip> EquipList = new List<equip>(); 

DataGridView.Datasource = EquipList; 

如下:在類中的前兩個屬性將 與他們的新名字被顯示,第三屬性不會顯示爲每 可瀏覽屬性。

public class equip 
    { 
    [DisplayName("Equipment ID")] 
    public int EquipID {get;set;} 

    [DisplayName("Equipment Name")] 
    public string EquipName {get;set;} 

    [Browsable(false)] 
    public int recordId {get; private set;} 
    } 
+0

+1,用於RAD項目I我會一直這樣做的 – 2011-04-05 13:00:01

1

你可以試試這個

DataGridViewTextBoxColumn dt = new DataGridViewTextBoxColumn(); 
dt.DataPropertyName = "EquipName"; //Property to bind. 
dt.HeaderText = "Name"; 
dataGridView1.Columns.Add(dt); 

你可以很容易地設計實現這一目標。

+0

這就是這麼長和費力 – Brad 2011-04-05 12:42:56

+1

@Brad無論如何這是更好的答案。您可以添加一列簡單的行:'dataGridView1.Columns.Add(「」,「EquipID」);''和'dataGridView1.Columns.Add(「」,「EquipName」);' – Bitterblue 2014-01-29 09:17:24

相關問題