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); 
}