ListView来自数组

时间:2014-07-24 22:44:09

标签: c# arrays listview listviewitem

我尝试使用2D数组中的项填充ListView。数组将是这样的:

数据:

john,doe,jd@test.com,555-123-4567,test
jane,doe,janed@test.com,555-123-4568,test2
test,testing,tt@test.com,555-123-4569,test3

我使用的代码是:

for (int row = 0; row < data.Length; row++)
{
   var item = new ListViewItem();
   item.Text = data[row][0];

   for (int col = 1; col < data[row].Length; col++)
   {
      item.SubItems.Add(data[row][col]);
   }
   ContactsList.Items.Add(item);
}

然而,当我运行代码时,它最终只拉出第一列并将其添加到同一ListViewItem并仅显示该行。所以对于上面的数据,它会给我:

john jane test

,没有别的。

感谢您提供任何帮助。

编辑1:这是联系人列表代码

this.ContactsList = new System.Windows.Forms.ListView();
...
this.ContactsList.AccessibleDescription = "Contacts List";
this.ContactsList.AccessibleName = "ContactsList";
this.ContactsList.Columns.AddRange(new System.Windows.Forms.ColumnHeader[] {
   this.FirstName,
   this.LastName,
   this.Email,
   this.PhoneNumber,
   this.Note});
this.ContactsList.Location = new System.Drawing.Point(12, 38);
this.ContactsList.Name = "ContactsList";
this.ContactsList.Size = new System.Drawing.Size(976, 574);
this.ContactsList.TabIndex = 8;
this.ContactsList.UseCompatibleStateImageBehavior = false;
this.ContactsList.SelectedIndexChanged +=
   new System.EventHandler(this.ContactsList_SelectedIndexChanged);

这段代码是由设计师生成的,并且在C#中相当年轻,我不确定我是否错过了什么。

1 个答案:

答案 0 :(得分:0)

所以在搞砸了一下之后,我找到了答案!

列表视图的视图需要设置为详细。

抱歉新手问题,希望这可以帮助别人。