如何将listView中的项目复制到数组中?

时间:2015-05-07 11:27:39

标签: c# listview

我希望从listView中的项目创建图表,我想我需要将这些项目复制到一个数组中然后从那里开始。

我要互相绘制的2列是; '电力' (双)和'持续时间' (TimeSpan),关于如何做到这一点的任何想法?

注意:listView有3列;设备,功率,持续时间。用户可以使用任意数量的设备填充listView

1 个答案:

答案 0 :(得分:1)

要将所有记录放入数组中,您可以使用:

ListViewItem[] items = new ListViewItem[listView1.Items.Count];
listView1.Items.CopyTo(items, 0);

如果你真的只想要Power和Duration,你需要遍历ListView中的每一行,然后你可以使用:

来获取subItems
listView1.Items[i].SubItems;

另外,我会做的是创建一个结构来存储2个值,并将这些结构添加到列表中,但这需要(我认为)循环通过数组来填充所有结构。无论如何,像这样:

struct Row{
    public double Power { get; set; }
    public TimeSpan Duration { get; set; }
}