我想实现这样的功能
在一个listview中的某一个subitem中插入多个图片,图片的个数不定。请问用listview可以实现吗?或者用其他的列表控件能否实现,能给一个简单的实现方案吗

解决方案 »

  1.   


    这是我写聊天工具修改用户图标的代码。。给你参考一下。。      public CatSet cs;
            // 窗体加载时显示头像图片
            private void CatFace_Load(object sender, EventArgs e)
            {
                try
                {
                    //显示所有图标
                    for (int i = 0; i < imageList_face.Images.Count; i++)
                    {   
                        listView_face.Items.Add(i.ToString());
                        listView_face.Items[i].ImageIndex = i;   
                    }                //给所有图标加边框
                    for (int i = 0; i < imageList_face.Images.Count; i++)
                    {
                        Image img = imageList_face.Images[i];//imagelist 中的每个图片
                        using (Graphics g = Graphics.FromImage(img))
                        {
                            using (Pen p = new Pen(Color.DarkBlue, 1f))
                            {
                                g.DrawRectangle(Pens.Black, new Rectangle(0, 0, img.Width - 1, img.Height - 1));//画上边框
                                g.Save();//保存
                            }
                        }
                        imageList_face.Images[i] = img;//替换原索引图片
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }        //更改按钮
            private void button_ok_Click(object sender, EventArgs e)
            {                   
                if (listView_face.SelectedItems.Count == 0)
                {
                    MessageBox.Show("请选择一个头像!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {            
                    cs.Show_Face(faceId);// 设置个人信息窗体中显示的头像
                    this.Close();
                }
            }        //取消按钮
            private void button_cancel_Click(object sender, EventArgs e)
            {
                this.Close();
            }        // 单击时选择头像  
            int faceId;
            private void listView_face_MouseClick(object sender, MouseEventArgs e)
            {
                try
                {
                    faceId = listView_face.SelectedItems[0].ImageIndex;// 获得当前选中的头像的索引
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.ToString());
                }
            }