Следующий метод получает все имена файлов в папке ресурсов:
public static string[] GetResourcesUnder(string folder)
{
folder = folder.ToLower() + "/";
var assembly = Assembly.GetCallingAssembly();
var resourcesName = assembly.GetName().Name + ".g.resources";
var stream = assembly.GetManifestResourceStream(resourcesName);
var resourceReader = new ResourceReader(stream);
var resources =
from p in resourceReader.OfType<DictionaryEntry>()
let theme = (string)p.Key
where theme.StartsWith(folder)
select theme.Substring(folder.Length);
return resources.ToArray();
}
Просто нужно надеть головку, когда вы их используете:
var files = GetResourcesUnder("Images");
foreach (var file in files)
{
string uriPath = "pack://application:,,,/Images/" + file;
//...
}
Я не напишите этот метод, это из другого вопроса здесь, на SO, я постараюсь найти его ...
Редактировать: Это от здесь .