我有一个预先配置好的ListView(已经设置了列标题),我想对一个对象列表进行任务,并将 - 作为行列表写入该列表视图 - 我列出的类的特定属性。
我正在尝试关注this existing question,虽然它完美地处理了只有一列的项目,但我不确定如何应用多个子项。
我有一个包含List<Product>
的类,该类正在传递给UserControl,该UserControl接受该列表并将每个产品项添加到控件中的ListView。
虽然链接的Q&amp; A处理它并不完整,但我不知道如何将其他属性作为SubItems传入ListView。
我的代码段:Products.Items.AddRange(basket.ProductList.Select(p => new ListViewItem(p.Description)).ToArray());
其中p
是List<Product>
我还希望在列表视图中有项目数量,单价和行总数(已经在课程中计算出来),但我不知道从哪里开始。
答案 0 :(得分:0)
ListViewItem
类有很多构造函数。最适合您的情况是ListViewItem Constructor (String[])
public ListViewItem(string [] items)
使用表示子项的字符串数组初始化ListViewItem类的新实例。
使用您的代码段,就像这样
Products.Items.AddRange(basket.ProductList.Select(p => new ListViewItem(new string[]
{
p.Description,
p.Quantity.ToString(...),
p.UnitPrice.ToString(...),
...
})).ToArray());
请注意,ListViewItem.Text
实际上是ListView.SubItems[0].Text
。