Listview - 添加数据
因此,试图使用ListView并用数据填充它。现在Listview - 添加数据
ListViewItem item = new ListViewItem("Test");
item.SubItems.Add("1");
item.SubItems.Add("2");
MyListView.Items.Add(item);
,我的天堂一直在寻找和阅读,我觉得这么愚蠢,因为我只是无法弄清楚如何的项目/子项目的工作。
上面的代码不会做任何事情:/
foreach (Ingredient o in list) { ListViewItem lvi = new ListViewItem(); lvi.Text = o.iName; lvi.SubItems.Add(o.iUnit); lvi.SubItems.Add(Convert.ToString(o.iCalories)); listView1.Items.Add(lvi); }
它现在,但我不再有机会获得物品。 如何知道取回物品或更改物品中的物品?
这应该工作:
viewList.View = View.Details;
viewList.Columns.Add("Key");
viewList.Columns.Add("Value");
ListViewItem lvi1 = new ListViewItem();
lvi1.Text = "Key";
lvi1.SubItems.Add("Value");
viewList.Items.Add(lvi1);
每个子项都是ListView中的一列。因此,myListView
需要根据上述代码配置3列。
在你上面的例子中,Test
将在第一列,第二列为1
,第三列为2
。
我已经通过UI做了3列,这是不好的? http://s18.postimage.org/v2odlhmp3/List_View.jpg – 2012-01-31 15:33:31
在你ListView
控制,您需要将View
样式设置为详细,如果你想看到的SubItems
。
例子:
MyListView.View = View.Details;
我得到它的工作。但是,如何从另一个类中更改ListView中的内容? – 2012-01-31 15:55:16
你必须编写一个公开的方法来在课堂上做你想做的事。 – jp2code 2012-01-31 16:40:42
listView1.Items.Clear();
listView1.View = View.Details;
List<Ingredient> list = controller.FindAllIngredients();
foreach (Ingredient o in list)
{
ListViewItem lvi = new ListViewItem();
lvi.Text = o.iName;
lvi.SubItems.Add(o.iUnit);
lvi.SubItems.Add(Convert.ToString(o.iCalories));
listView1.Items.Add(lvi);
}
如何让我这个成不必知道字段的数量的通用方法。 例如,如果我添加了另一个字段,类别为Ingridient,则此方法不起作用。 还希望将其用于我所有的列表视图,而不依赖于类和列的数量。
等一下,我知道这里有什么问题。 MyListView没有连接到我的表单中的列表视图? 我该怎么做? – 2012-01-31 15:43:34
你的'ListView'控件与你的Form不在同一个类中吗?它当然应该是。 – jp2code 2012-01-31 16:42:11