如果你说的是 listView1 在删除了文件后列表没有刷新的问题
可以这样解决 抽取 //双击文件夹在Listview中显示文件内容的全部代码为方法 a();
在删除文件方法中 删除文件之后 控件重绘之前调用它. 这样就可以了
没有修改你的程序逻辑只是抽取了一个方法.
//删除文件
private void button3_Click(object sender, EventArgs e)
{
string filePath = GetFilePath();
DeleteFile(filePath);
a();
listView1.Update();
ListViewShow();
}
//双击文件夹在Listview中显示文件内容
private void tvRoot_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
a();
}
//在双击文件夹在Listview中显示文件内容方法中抽取的方法
private void a()
{
listView1.Clear();
InitialListView();
string dir = tvRoot.SelectedNode.Tag.ToString();
DirectoryInfo dirInfo = new DirectoryInfo(dir);
FileInfo[] info = dirInfo.GetFiles();
foreach (FileInfo file in info)
{
ListViewItem item = new ListViewItem(file.Name);
item.SubItems.Add(file.Length.ToString());
item.SubItems.Add(file.Attributes.ToString());
item.SubItems.Add(file.LastWriteTime.ToString());
listView1.Items.Add(item);
}
}