C# 转换列表<;对象>;ListView项(带子项)的步骤
我有一个预配置的ListView(已经设置了列标题),我想任务一个对象列表,并将我有一个列表的类的特定属性作为行写入该ListView 我试着遵循,虽然它可以完美地处理只有一列的项,但我不知道如何应用多个子项 我有一个类,它包含一个C# 转换列表<;对象>;ListView项(带子项)的步骤,c#,winforms,listview,C#,Winforms,Listview,我有一个预配置的ListView(已经设置了列标题),我想任务一个对象列表,并将我有一个列表的类的特定属性作为行写入该ListView 我试着遵循,虽然它可以完美地处理只有一列的项,但我不知道如何应用多个子项 我有一个类,它包含一个列表,该列表被传递给一个UserControl,该UserControl获取该列表并将每个产品项添加到控件内的列表视图中 虽然链接的Q&A处理了这个问题,但它并不完整,我不知道如何将其他属性作为子项放到ListView中 我的代码片段:Products.Items.A
列表
,该列表被传递给一个UserControl,该UserControl获取该列表并将每个产品项添加到控件内的列表视图中
虽然链接的Q&A处理了这个问题,但它并不完整,我不知道如何将其他属性作为子项放到ListView中
我的代码片段:Products.Items.AddRange(basket.ProductList.Select(p=>newlistViewItem(p.Description)).ToArray()代码>其中p
是一个列表
我还希望在listview中有项目数量、单价和行总数(已经在类中计算出来),但我不确定从哪里开始。ListViewItem
类有很多构造函数。最适合你的情况是
公共ListViewItem(字符串[]项)
使用表示子项的字符串数组初始化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
这是WPF还是表单?对不起,我应该指定-它是WinFormsAlso,您应该详细说明一下,到底是什么问题?是否为视图创建新列?是否从listviewitem中查找产品?等或者您希望主详细视图?listview不太适合这种情况。您必须为每个项目添加子项目。另一方面,如果是datagridview,myDGV.DataSource=basket代码>是您所需要的全部我已经更新了-但简而言之,我有一个类“产品”的列表,我想将其转换为包含子项的ListViewItems,其中子项是类的属性,例如数量、单价、行总数等。。