【问题标题】:C# clear listview columns cellsC#清除listview列单元格
【发布时间】:2014-07-30 03:20:33
【问题描述】:

我在列表视图中有一些列,它们是“Column1”、“Column2”、.... 我想清除(在该单元格处设置空字符)并从相关列中删除一些单元格,这些单元格可以是(1.column)“Column1”。你能帮帮我吗?

具体问题: 删除选定的行后,我想用一个按钮更新我的 ID 列。我该怎么做?

for (int i = 1; i <= newID; i++)
{
    int newID = listView1.Items.Count;
    listView1.Items[0].Remove(listView1.Columns[0].ListView.Items.Count); // something like that ?
    listView1.Items.Add(i.ToString());
}

【问题讨论】:

  • 因为rep,我无法上传图片
  • 如果我理解正确,你想删除中间的一些行并给后面的行提供id? (例如,您有 3 行 -> 删除第 2 行 -> 第 3 行 id 现在是 2)
  • 是的。为了0-2-4-6-7-8-9>>>1-2-3-4-5-6-7。只有我想更改 listview1 中的 column1
  • 嗯,只有我一个不太明白这个问题吗?
  • 对不起,我听不懂?可能我没问清楚,你有什么不明白的?

标签: c# listview cell


【解决方案1】:

在对其他代码进行一些修改后,您可以通过按钮获得所需的内容。

 if (listView1.Items.Count == 0) return;
            var col = listView1.Columns.Cast<ColumnHeader>()
                                .Select((x, i) => new { x, i })
                                .FirstOrDefault(a => a.x.Text == "ID");
            if (col == null) return;
            foreach (ListViewItem item in listView1.Items)
            {
                item.SubItems[col.i].Text = "";
            }
            int newID = listView1.Items.Count;
            for (int i = 1; i <= newID; i++)
            {
                listView1.Items[i-1].SubItems[0].Text = i.ToString();
            }

【讨论】:

    猜你喜欢
    • 2022-01-02
    • 1970-01-01
    • 1970-01-01
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-14
    相关资源
    最近更新 更多