心灵相待吧 关注:3贴子:118
  • 0回复贴,共1

ImageList ListView组合显示图片集合

取消只看楼主收藏回复

1.保存图片的路径
保存到imageList中的图片是缩小比率的,所有显示出来会失真,在控件上设置即可解决,把ColorDepth属性设置为Dept32Bit, ImageSize属性设置成适合你图片大小
this.imageList1.ColorDepth = ColorDepth.Depth32Bit;
把图片的路径保存到一个list中。(相对路径)部分代码
List<string>imageLists=new List<string>();
imageLists.Add(@"图片/1.png");
2. 把图片添加到imagelist和listview中(当点击listview中的图片时,要得到图片的路径,而imageList保存的只是图片,所以我将图片的路径保存到listviw每个item的name属性中。当点击图片时就能取到路径)
for(int i = 0; i < imageLists.Count;i++ )
{
ImList.Images.Add(Image.FromFile(imageLists[i].ToString()));
listView.Items.Add("",i);
listView.Items[i].ImageIndex= i;
//将图片的路径保存到name属性中
listView.Items[i].Name= imageLists[i].ToString();
}
将数据库中保存的图片获取读取出来进行绑定添加的部分代码
//查询数据库中的表获取 图片以及图片下面显示的文字
goods = Bll.BaseInfo.GoodSTyleAct.GetGdStylePage("Id Desc", pageindex, 20, "STYId", filter, null, 0);
for (int i = 0; i < goods.Count; i++)
{
ListViewItem item = new ListViewItem();
if (goods[i].ImgPic != null)
{
if (goods[i].ImgPic.Length > 10)
{
MemoryStream ms = new MemoryStream(goods[i].ImgPic);
Image image = Image.FromStream(ms);
imageList1.Images.Add(image);
item.ImageIndex = vIndex;
vIndex = vIndex + 1;
}
}
item.Text = goods[i].STYId;
listView1.Items.Add(item);
}


IP属地:广东1楼2016-08-10 10:57回复