本帖最后由 zl657855905 于 2012-05-22 11:43:07 编辑

解决方案 »

  1.   

    private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
            {
                if (e.IsSelected)
                {
                    PictureBox pix1 = new PictureBox();
                    //pix1.Image = imageList1.Images[listView1.FocusedItem.ImageIndex];
                    pix1.Image = pic[listView1.FocusedItem.ImageIndex];
                    pix1.SizeMode = PictureBoxSizeMode.AutoSize;
                    pix1.MouseDown += new MouseEventHandler(pix1_MouseDown);
                    pix1.MouseMove += new MouseEventHandler(pix1_MouseMove);
                    pix1.Name = "picturebox_id" + listView1.SelectIndex.ToString();
                    this.panel1.Controls.Add(pix1);
                }
            }判断:if (this.Controls.Cast<Control>().Any(x => x.Name == "picturebox_id" + SelectIndex.ToString()))
    {
        ...//存在
    }
      

  2.   

    不用每次都new新的picturebox,一个就可以了
      

  3.   

    问题是,需要让多个picturebox共存于panel中,并进行拖动的。
      

  4.   

    private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
    {
    if (e.IsSelected)看不懂先查msdn。问google,百度。
      

  5.   

    我是说这句:
    if (this.Controls.Cast<Control>().Any(x => x.Name == "picturebox_id" + SelectIndex.ToString()))
    {
      ...//存在
    }