从文件C#中删除ListView中的项

时间:2015-01-20 09:41:06

标签: c# listview

如何从ListView中删除项目,还要从文件中删除它? 这是我目前的代码:

private void button3_Click(object sender, EventArgs e)
    {
        listView1.Items.Remove(listView1.SelectedItems[0]);

        foreach (ListViewItem item in listView1.SelectedItems)
                File.Delete(path + "//Lyrics//" + item.Text + ".txt");                  
    }

这会从列表中删除项目,但不会删除其文件。它只在我选择多个项目时删除文件。例如,我选择了3个项目:1.txt,2.txt,3.txt。它只会从我选择的最后一个文件中删除该文件,即3.txt,但会删除列表中的所有文件。

1 个答案:

答案 0 :(得分:3)

您可以将要删除的项目具体化到列表中,然后删除:

private void button3_Click(object sender, EventArgs e) {
  var toDelete = listView1.SelectedItems.ToList();

  foreach(var item in toDelete) {
    listView1.Items.Remove(item);
    File.Delete(path + "//Lyrics//" + item.Text + ".txt");
  } 
}