c# ListView -编程编辑列条目

本文关键字:编辑 编程 ListView | 更新日期: 2023-09-27 17:50:59

我使用的是有两列的ListView

要添加新项目(到第0列),我使用:

listView1.Items.Add("Hello")
这将导致Hello出现在索引最低的列中。但是,我还想添加行号

我正在尝试:

        for (int c = 0; c < listView1.Items.Count; c++)
        {
            listView1.Items[c].SubItems.Clear();
            listView1.Items[c].SubItems.Add(c.ToString());
        }

问题,我相信,在于主要项目(s)被清除,即使我只是试图clear()子项(即第二列中的条目)。

所以我的问题是:如何单独编辑列项以显示行/行号?

c# ListView -编程编辑列条目

SubItems中的第一项(索引0)实际上是左列的主要项。

如果您已经添加了像listViewItem.SubItems.Add(string.Empty);这样的子条目,那么您可以这样编辑该子条目:

    for (int c = 0; c < listView1.Items.Count; c++)
    {
        listView1.Items[c].SubItems[1].Text = c.ToString();
    }

我可能已经解决了…

可能是添加了SubItem后,主要项目移到了SubItem[0]

下面的代码似乎对我有用,但我不确定是否存在更好的方法。

        for (int c = 0; c < listView1.Items.Count; c++)
        {
            listView1.Items[c].SubItems[0].Text = listView1.Items[c].Text;
            listView1.Items[c].SubItems.Add(c.ToString());
            listView1.Items[c].SubItems[1].Text = c.ToString();
        }