2010-02-10 48 views
0

我已經創建pictureboxes動態地在Windows formsApplication生成標籤控件窗體應用程序...它運作良好... 現在我要動態地生成標籤盒,該標籤盒將在每張照片的下方顯示並且必須顯示相應的影片名稱... 我該怎麼做?給我的這個解決方案...問題在Windows

在此先感謝... 和我的編碼是在這裏..

  int Left = this.Left+200; 
      int Top = this.Top; 

      for(int i=0;i<Num_Picbox;i++) 
      { 
      shapes[i] = new PictureBox(); 
      shapes[i].Location = new Point(Left,Top); 
      Left += 200; 
      Top += i + 0; 

      shapes[i].Size = new Size(160,160); 
      shapes[i].BackColor = Color.Black; 
      shapes[i].Visible = true; 
      shapes[i].Name = i.ToString(); 
      shapes[i].BorderStyle = BorderStyle.FixedSingle; 

      flowLayoutPanel1.Controls.Add(shapes[i]); 
      flowLayoutPanel1.WrapContents = true; 
      shapes[i].Click += new EventHandler(PictureBox_Click); 
      } 

回答

1

爲包含停靠到Bottom的標籤和停靠到Fill的圖片框的每張圖片創建一個面板。將此面板添加到流式佈局面板而不是您的圖片框。確保先將圖片框添加到面板的Controls集合中,以確保對接按預期工作。

shapes[i].Dock = DockStyle.Fill; 
flowLayoutPanel1.Controls.Add(
    new Panel { 
     Controls = { 
      shapes[i], 
      new Label { 
       Dock = DockStyle.Bottom, 
       Text = i.ToString() 
      } 
     } 
    }); 
+0

太感謝你了!它的工作......感謝你的不錯的方式來回答... 它清楚地瞭解我... – Suryakavitha 2010-02-10 07:30:27

+0

,但我怎麼能顯示圖像在該圖片盒... – Suryakavitha 2010-02-10 07:44:11

2

我認爲最好的辦法是創建與PictureBox的自定義用戶的控制和按照您想要的方式佈置標籤,然後將其動態添加到flowlayout面板。使shapes []是自定義控件類型的數組。