有不同类别的图片若干,如汽车,自然,人物..应用程序可以在ListView中分类浏览图片,如点击了人物按钮ListView中就只出现人物类图片
想用资源文件来调用,生成资源文件时思路:不同类别的图片放入不同文件夹内,做好分类,然后取得某类文件夹内所有图片路径,生成image对象,加入到一个image数组中.然后将此数组加入到资源文件中.
Image[] images = new Image[];
for(i-n)
{
  Image img = Image.FromFile(imagesPath);
  images[i] = img;
}
 rw.AddResource("汽车",images);//rw为ResourceWriter调用: ResourceManager rm = new ResourceManager("命名空间.资源名", Assembly.GetExecutingAssembly());
 ImageList imalst = new ImageList(); 
//从资源文件中获得数据
 Image[] images = ((Image[])(rm.GetObject("汽车")));
 imalst.Images.AddRange(images);
 for (int i = 0; i < imalst.Images.Count; i++)
 {             
  listView1.Items.Add(imalst.Images.Keys[i], i);
  }程序能够正常运行,点击某类后图片不能正常显示,出现空白区域。下断点后发现从资源文件中获取数据的images数组也是有值的.
网上看到说是注释程序入口中Application.EnableVisualStyles();就能正常显示,但还是不行。不得其解大量需要分类显示的图片,一张张放入资源文件中貌似不能满足要求.分不多了,向各位求教!

解决方案 »

  1.   

    我记得在设计页面上往imagelist里面只能添加ico图片的样子,你把图片换成.ico的试下
      

  2.   

    不是ico的问题,bmp ,jpg的都是可以的
      

  3.   

    "点击某类后图片不能正常显示"?
    建议做个小程序,手工把这类图片加到资源文件,然后用程序来调用,看看是否可显示. 如果可以显示的话,就照样做就是了.
    如果资源文件中的图片类型是ICO的,从资源文件取值应放到ICO类型变量中,或能兼容ico的变量中.