我有一個listview的問題。我不確定如何使用循環來填充項目。下面的代碼適用於第一行,我認爲我需要增加行,但我不知道如何。當列表包含超過1項我得到的錯誤信息:將項目添加到循環中的列表視圖
失敗的陣列
foreach (List<string> l in list)
{
ListViewItem item = new ListViewItem(l[0]);
item.SubItems.Add(l[1]);
item.SubItems.Add(l[2]);
item.SubItems.Add(l[3]);
item.SubItems.Add(l[4]);
lstBooks.Items.Add(item);
}
在比較兩個元素下面是整體功能。我本來與列表中的問題,但它是在這裏populating a list of a list of strings but
解決的視圖設置爲細節
private void ListBooks()
{
lstBooks.Items.Clear();
lstBooks.Columns.Clear();
lstBooks.Visible = true;
List<List<string>> list = db.ListDetailsByGenre();
lstBooks.Columns.Add("Title", 120);
lstBooks.Columns.Add("Author", 120);
lstBooks.Columns.Add("Library", 120);
lstBooks.Columns.Add("Genre", 120);
foreach (List<string> l in list)
ListViewItem item = new ListViewItem(l[0]);
item.SubItems.Add(l[1]);
item.SubItems.Add(l[2]);
item.SubItems.Add(l[3]);
item.SubItems.Add(l[4]);
lstBooks.Items.Add(item);
}
}
他的代碼看起來不錯,你做了什麼改變?只是OP沒有完成他的問題。 – 2011-03-26 09:08:16
@Sanjee - foreach循環不變。我只是通過創建一個列表清單來測試'list'。 –
JYelton
2011-03-26 09:12:59
它在到達循環之前被清除。第一個循環完美運行,但第二個循環崩潰。不得不出去一段時間,但我會回來時會提供更多的代碼 – flo 2011-03-26 09:18:47