2017-10-08 121 views
0

我需要從數組中插入數據到DataGridView,但是當我從列表中處理DataGridView時,我得到的所有東西都是數組中的元素數。如何從列表數組中插入數據到datagridview?

public static class Globalne 
{ 
    public static List<string> Mena = new List<string>(); 
    public static string[] stringy = { "1", "2", "3", "4", "5" }; 
} 

這是程序

private void Form1_Load(object sender, EventArgs e) 
{ 
    dataGridView1.ColumnCount = 3; 
    dataGridView1.Columns[0].Name = "Name"; 
    dataGridView1.Columns[1].Name = "Surname"; 
    dataGridView1.DataSource = Globalne.stringy; 
} 
+0

你定義3列,以顯示不能結合到任何那些列的字符串數組。你能指望什麼?你會怎樣做? –

+0

我想插入數組列表到一列 –

回答

1

爲了解決這個問題,請考慮以下注意事項:

  • 要綁定DataGridView到字符串數組,你應該配置圖樣的List包含一個屬性。
  • DataGridView的每一列都將顯示DataSource屬性的值,該屬性的名稱與該列的DataPropertyName的屬性名稱相同。

string[] stringy = { "A", "B", "C", "D", "E" }; 
dataGridView1.Columns.Add("C1", "Header 1"); 
dataGridView1.Columns["C1"].DataPropertyName = "Property1"; 
dataGridView1.Columns.Add("C2", "Header 2"); 
dataGridView1.DataSource = stringy.Select(x => new { Property1 = x }).ToList(); 

這裏是結果:

enter image description here

+0

這正是我想要的!非常感謝 ! –

+0

一般而言,我建議您使用'BindingList '或'DataTable'來編輯'DataGridView'中的數據,而不是這樣的數組。 –

+0

但是我怎樣才能使下一列和另一個列表數組相同?當我嘗試一切時,我得到的是重寫第一列,否則最後一行是什麼? –