C# 在列表框中选择一个目录并显示所选的目录';将文件保存在另一个列表框中
我使用以下方法将目录枚举到C# 在列表框中选择一个目录并显示所选的目录';将文件保存在另一个列表框中,c#,silverlight,visual-web-developer-2010,C#,Silverlight,Visual Web Developer 2010,我使用以下方法将目录枚举到列表框中: private void TE_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { IEnumerable<string> file = System.IO.Directory.EnumerateDirectories(@"C:\Users\user\Desktop", "*.*", System.IO.SearchOption.AllDirec
列表框中:
private void TE_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
IEnumerable<string> file = System.IO.Directory.EnumerateDirectories(@"C:\Users\user\Desktop", "*.*", System.IO.SearchOption.AllDirectories);
foreach (var f in file)
{
lbz.Items.Add(String.Format(f));
}
}
箭头就是我被难住的地方,因为我使用的是Microsoft Visual Web Developer,所以我不能使用GetFiles
,我必须使用Enumerate
我希望能够通过在lbz中选择一个目录并在lbz2中显示该目录的内容以及其中的所有文件来填充另一个列表框(lbz2)
如果:
string[]filepath=Directory.EnumerateFiles()/:这应该可以:
foreach (var filePath in Directory.EnumerateFiles(lbz.SelectedItem.ToString()))
{
lbz2.Items.Add(filePath);
}
EnumerateFiles返回IEnumerable
,而不是string[]
它可以工作,我必须删除“string[]filepath=Directory.EnumerateFiles()/:
string[] filePaths = Directory.EnumerateFiles() //:<------
for (int i = 0; i < filePaths.Length; ++i)
{
lbz2.Items.Add(i);
}
foreach (var filePath in Directory.EnumerateFiles(lbz.SelectedItem.ToString()))
{
lbz2.Items.Add(filePath);
}