2014-11-04 70 views
1

我在从Properties.Resources获取图像到数组中时出现问题。每张图片都有自己的名字,但是我找不到一种方法可以轻松地将它们放入数组中,而无需像这样手动输入。从resx文件中获取图像数组C#

System.Drawing.Bitmap[] imageArray = new System.Drawing.Bitmap[29]; 
imageArray[0] = Properties.Resources.acorno; 
imageArray[1] = Properties.Resources.batterymanD; 
imageArray[2] = Properties.Resources.batterymanMicroCell; 

有一个简单的方法,使从我Resources.resx文件中的数组,在不改变文件的名称?

+0

是你熟悉的foreach'()'方法..?你可以实现基于集合的东西,例如 – MethodMan 2014-11-04 17:53:26

+0

我不熟悉foreach()方法,有没有一个链接可以指导我理解它? – Fuzzyketchup 2014-11-04 17:54:24

+0

做一个谷歌搜索,以及循环通过资源文件C#这里是另一个链接是在StackOverflow,可以帮助你http://stackoverflow.com/questions/2041000/loop-through-all-the-resources-in-a -resx-file – MethodMan 2014-11-04 17:56:54

回答

0

可以使用的ResourceSet生成数组:

var resourceSet = Properties.Resources.ResourceManager.GetResourceSet(System.Globalization.CultureInfo.CurrentUICulture, true, true); 
System.Drawing.Bitmap[] imageArray = resourceSet.OfType<System.Collections.DictionaryEntry>() 
    .Select(i => (System.Drawing.Bitmap)i.Value) 
    .ToArray();