我对 C# 很陌生。我正在使用 C# 填充文件资源管理器。我现在要做的是实现该listView1_MouseDoubleClick()
方法,以便当我双击子文件夹时,当前的 listView 将被清除,然后它将显示该子文件夹中的文件和文件夹(就像 Windows 资源管理器所做的那样)。这是我的代码:
private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
{
for (int i = 0; i < listView1.Items.Count; i++)
{
if (listView1.Items[i].Selected == true)
{
string path = listView1.Items[i].Name;
comboBox1.Text = path;
listView1.Items.Clear();
LoadFilesAndDir(path);
}
}
}
private void LoadFilesAndDir(string address)
{
DirectoryInfo di = new DirectoryInfo(address);
try
{
foreach (FileInfo fi in di.GetFiles())
{
listView1.Items.Add(fi.Name);
}
try
{
foreach (DirectoryInfo listd in di.GetDirectories())
{
listView1.Items.Add(listd.FullName, listd.Name, 0);
}
}
catch (Exception e1)
{
}
}
catch (Exception e1)
{
}
}
但它未能运行。当我一步步调试这个错误时,我发现在这条语句之后:变量path = listView1.Items[i].Name;
的path
值是""
. 所以我猜这是导致错误的原因。但我不知道如何解决这个问题......你们能帮我解决这个问题吗?非常感谢先进!