列表视图-添加数据
本文关键字:数据 添加 视图 列表 | 更新日期: 2023-09-27 18:22:12
因此,尝试使用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);
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中添加了另一个字段Category,这种方法将不起作用。我还想将它用于我的所有列表视图,这与类和列数无关。
每个子项都是ListView中的一列。因此,myListView
需要根据上述代码配置3列。
在上面的示例中,Test
将位于第一列,1
位于第二列,而2
位于第三列。
在ListView
控件中,如果要查看SubItems
,则需要将View
样式设置为Details。
示例:
MyListView.View = View.Details;