2011-04-06 65 views
0

我想刪除列表中的選中項目查看我的應用程序。該應用程序很簡單,它刪除當前用戶臨時目錄中的臨時文件。當應用程序執行時,它會加載列表視圖中的所有臨時文件。我已啓用複選框,以便用戶可以檢查他/她想要刪除的項目 謝謝您的時間。刪除啓用了複選框的列表框中的項目。通過檢查你想刪除的文件

代碼:

private void button1_Click(object sender, EventArgs e) 
    { 
     if (listView1.CheckedItems.Count > 0) 
     { 
      foreach (var fName in Directory.GetFiles(tFile)) 
      { 
       try 
       { 
        File.Delete(fName); 
       } 
       catch (Exception) 
       { 
        // Ignore the failure and continue 
       } 
      } 
      MessageBox.Show("Finished"); 
      PaintListView(tFile); 
     } 
     else 
     { 
      MessageBox.Show("Please Check the files you want to delete"); 
     } 
    } 




    private void selectAllToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     foreach (ListViewItem item in listView1.Items) 
     { 
      item.Checked = true; 
     } 
    } 

    private void unselectAllToolStripMenuItem_Click(object sender, EventArgs e) 
    { 
     foreach (ListViewItem item in listView1.Items) 
     { 
      item.Checked = false; 
     } 
    } 

    private void listView1_ItemChecked(object sender, ItemCheckEventArgs e) 
    { 
     int c = listView1.CheckedItems.Count; 
     for (int i = 0; i < c; i++) 
     { 
      itemsChecked.Text = i.ToString(); 
     } 

     //int listCount = listView1.CheckedItems.Count; 
     //itemsChecked.Text = listCount.ToString(); 
    } 
+0

什麼是問題,併發布一些代碼。 – 2011-04-06 03:08:47

+0

問題是我想刪除被檢查的文件 – partialdata 2011-04-06 03:28:17

+2

@user:代碼太長;修剪到必要的部分... – Mehrdad 2011-04-06 03:37:48

回答

1

地方,你已經例如按鈕點擊事件...評論裏面的代碼,

private void btnSubmit_Click(object sender, EventArgs e) 
{ 
     int listCount = listView1.CheckedItems.Count; 
     itemsChecked.Text = listCount.ToString(); 
} 

然後在此相同的事件處理程序,inlcude的邏輯通過迭代listview內容來刪除檢查的文件。

+0

再一次感謝你,所以刪除檢查項目的邏輯將是一個foreach循環? – partialdata 2011-04-06 13:41:27

+0

' int listCount = listView1.CheckedItems.Count; itemsChecked.Text = listCount.ToString(); 如果(listView1.CheckedItems.Count> 0){ 嘗試 { 的foreach(在Directory.GetFiles(tFile)VAR FNAME) { File.Delete(FNAME); } 趕上(例外){ // 忽略故障並繼續 } } ' – partialdata 2011-04-06 16:17:57

+0

**那是我上面的代碼,但它只是刪除一切沒有什麼母校檢查或沒有。** – partialdata 2011-04-06 16:20:59