我在C#编码,我有一个列表视图控件,列数很少,我想知道如何从List<List<string>>
添加项目。我可以使用
var item3 = new ListViewItem(new[] { table[0][0], table[0][1], table[0][2], table[0][3], table[0][5], table[0][7], table[0][8] });
但这对我来说似乎不对,而且它也不会起作用,因为列表的数量是随机的。
答案 0 :(得分:0)
您可以使用List<T>.ToArray
将列表转换为数组,然后将其传递给ListViewItem
的构造函数。因为你只对你桌子的第一个子项目感兴趣,你可以这样做:
var item3 = new ListViewItem(table[0].ToArray());
答案 1 :(得分:0)
您可以使用以下代码将List<List<string>>
填入ListView
:
listView1.Items.AddRange(table.Select(list=>new ListViewItem(list.ToArray())))
.ToArray();
答案 2 :(得分:0)
可能你的意思是这样的?
示例数据
的 ITEM1 强> 的
List<string> list1 = new List<string>();
list1.Add("item-1.1");
list1.Add("item-1.2");
的 ITEM2 强> 的
List<string> list2 = new List<string>();
list2.Add("item-2.1");
list2.Add("item-2.2");
的 allitem 强> 的
List<List<string>> listAll = new List<List<string>>();
listAll.Add(list1);
listAll.Add(list2);
字符串值
string sResult = string.Join(", ", from list in listAll from item in list select item);
列表值
List<string> lResult = new List<string>(from list in listAll from item in list select item);
<强>结合强>
lv.DataSource = lResult;
lv.DataBind();
<强>结果强>
item-1.1 item-1.2 item-2.1 item-2.2