我正在製作一個個人使用的應用程序,它將組織.png文件,並讓我通過應用程序(通過ListView)從目錄中遠程刪除它們。通過ListView刪除.png文件
我有一個代碼片段將從ListView中刪除文件,但不是從實際的文件目錄。我希望在點擊刪除時能夠同時執行這兩項操作。
private void deleteToolStripMenuItem1_Click(object sender, EventArgs e)
{
if (MessageBox.Show("This will delete the file from the folder. Are you sure?", "Warning", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning) == DialogResult.Yes)
for (int i = fileDisplayListView.SelectedItems.Count - 1; i >= 0; i--)
{
ListViewItem item = fileDisplayListView.SelectedItems[i];
fileDisplayListView.Items[item.Index].Remove();
File.Delete(fbd.SelectedPath + fileDisplayListView.Items.ToString());
}
}
以獲取更多信息的其他片段..
private void openToolStripButton_Click(object sender, EventArgs e)
{
fbd.ShowDialog();
DirectoryInfo di = new DirectoryInfo(fbd.SelectedPath);
directoryPath.Text = "Directory: " + fbd.SelectedPath;
FileInfo[] Files =
di.GetFiles("*.PNG*", SearchOption.AllDirectories);
if (Files.Length == 0)
MessageBox.Show("No .png files found in directory...", "Notification", MessageBoxButtons.OK, MessageBoxIcon.Question);
fileDisplayListView.Items.Clear();
foreach (FileInfo f in Files)
{
ListViewItem item = new ListViewItem(f.Name);
this.fileDisplayListView.Items.Add(f.Name);
}
this.fileDisplayListView.View = View.Details;
this.fileDisplayListView.Refresh();
}
它的最後一部分,File.Delete(fbd.SelectedPath + fileDisplayListView.Items.ToString());
不起作用。請幫忙!
我guesing,與其'File.Delete(fbd.SelectedPath + fileDisplayListView.Items.ToString());'你應該有'File.Delete(Path.Combine(fbd.SelectedPath,項目。 Text));' – Kedrzu
使用調試器可以創造奇蹟。你是否捕獲選定的文件,它是FilePath ..? – MethodMan
@Kedrzu我試過這個,它不起作用。 MethodMan我已經將MessageBox()檢查器放在最終的字符串之間,文件路徑似乎是準確的。這似乎是一個非常簡單的解決方案,但它不斷輸出'FILE_DIRECTORYSystem.Windows.Forms.ListView + ListViewItemCollection' –