Я использую Directory.GetFiles
, чтобы дать мне mp3-файлы, и я хотел бы заполнить ListBox
результатами, но вместо того, чтобы останавливать программу, пока она проходит через метод, могу ли я заставить ее искатьи заполнить ListBox
до получения mp3-файлов?
, так что я использую следующее (и не удается добавить их по одному за раз, он добавляет их все сразу, когдаэто сделано)
private List<string> Getmp3sFromFolders(string folder)
{
List<string> fileArray = new List<string>();
try
{
DirectoryInfo dir = new DirectoryInfo(folder);
var files = dir.EnumerateFiles("*.mp3");
foreach (var file in files)
{
fileArray.Add(file.FullName);
Dispatcher.BeginInvoke(_AddMP3ToListbox, file.Name);
}
var directories = dir.EnumerateDirectories();
foreach (var subdir in directories)
{
fileArray.AddRange(Getmp3sFromFolders(subdir.FullName));
}
// lblFolderSearching.Content = folder.ToString();
}
catch
{
}
return fileArray;
}
я добавил _AddMP3ToListbox = AddMP3ToListbox
он действительно добавляет mp3 в список, но он делает это сразу, не сразу, как только находит,как я могу это исправить?