删除列表视图中检查的文件

时间:2011-04-07 02:44:27

标签: winforms c#-4.0

下面的代码就是我在一个按钮中我似乎无法理解如何在检查后删除这些文件了解这些实际上正在删除临时目录中的文件,这是我遇到的问题,现在从中删除它listview我知道如何从列表视图中删除它们,但实际删除被检查的逻辑背后的逻辑是我难倒的

感谢您的帮助

在这里输入代码

       if (listView1.CheckedItems.Count != 0)
        {
            // If so, loop through all checked files and delete.


            string f = ""; 
            for (int x = 0; x <= listView1.CheckedItems.Count - 1; x++)
            {

                    // code to delete files 
               tFile = Path.GetTempPath();
                File.Delete(file.ToString());

            }
            MessageBox.Show(f); 
        }
        else
        {
            MessageBox.Show("Please Check the files you want to delete");
        }
    }

1 个答案:

答案 0 :(得分:0)

从上面的评论中,我认为你的意思是当你调用itemChecked.ToString()时,这个值实际上是

  

ListViewItem:{filename}

ListViewItem.ToString()方法在括号中显示.Text属性,因此您需要在循环中引用该属性。您也可以使用这样的foreach循环:

string tempDirectory = Path.GetTempPath();
foreach (ListViewItem item in listView1.CheckedItems)
{
    string fileName = item.Text;
    string filePath = Path.Combine(tempDirectory, fileName);
    File.Delete(filePath);
}