我在窗体上拖了个listview和imagelist,在form_load里写了这些代码,为啥listview里图片显示不出来ListViewItem li = new ListViewItem();
li.Text = "item1";
li.ImageKey = "1";
listview.Items.Add(li);byte[] bImage = 从数据库里读出来的二进制图片的流;
MemoryStream ms = new MemoryStream(bImage );
pictureBox1.Image = new Bitmap(ms);  // 我直接用picturebox 显示是可以显示图片的
imagelist.Images.Add("1",new Bitmap(ms)); //指定图片名为1,对应上面的imagekeylistview.SmallImageList = il;
listview.View = View.SmallIcon;为啥只有字,图片没,哪里错了?

解决方案 »

  1.   

    先给 imagelist 赋值,然后给  listviewItem ImageKey  赋值.
    然后在把  listview.View = View.Details;
    照你上面的代码修改为byte[] bImage = 从数据库里读出来的二进制图片的流;
    MemoryStream ms = new MemoryStream(bImage );
    pictureBox1.Image = new Bitmap(ms); // 我直接用picturebox 显示是可以显示图片的
    imagelist.Images.Add("1",new Bitmap(ms)); //指定图片名为1,对应上面的imagekeylistview.SmallImageList = il;
    //listview.View = View.SmallIcon;
    listview.View = View.Details;ListViewItem li = new ListViewItem();
    li.Text = "item1";
    li.ImageKey = "1";
    listview.Items.Add(li);
      

  2.   

    byte[] bImage = 从数据库里读出来的二进制图片的流;
    MemoryStream ms = new MemoryStream(bImage );
    pictureBox1.Image = new Bitmap(ms); // 我直接用picturebox 显示是可以显示图片的
    imagelist.Images.Add("1",new Bitmap(ms)); //指定图片名为1,对应上面的imagekeylistview.SmallImageList = il;
    //listview.View = View.SmallIcon;
    listview.View = View.Details;ListViewItem li = new ListViewItem();
    li.Text = "item1";
    li.ImageKey = 1;
    listview.Items.Add(li);