2016-05-13 10 views
0

Ich habe ein Panel in Visual Studio/Windows Form app.Aber ich kann nicht hinzufügen, pictureBox auf es mit code.It funktioniert, wenn ich ohne Panel aber ich brauche es.MyCodes:Hinzufügen von PictureBox zu Panel mit Codes

 PictureBox[] pipe = new PictureBox[3]; 

private void Form1_Load(object sender, EventArgs e) 
    { 
     CreatePipes(1);} 

    private void CreatetopPipes(int Number) 
    { 
      for (int i = 0; i <= Number; i++) 
     { 

      PictureBox temp = new PictureBox(); 
      this.Controls.Add(temp); 
      temp.Width = 50; 
      temp.Height = 350; 
      temp.BorderStyle = BorderStyle.FixedSingle; 
      temp.BackColor = Color.Red; 
      temp.Top = 30; 
      temp.Left = 300; 
      topPipe[i] = temp; 
      topPipe[i].Visible = true; 


     } 
    } 
+2

'this' - ein' Form' ist. Verwenden Sie stattdessen Ihr Panel. –

+0

Und stapeln Sie sie nicht alle am selben Ort! – TaW

Antwort

0

können Sie verwenden panelName.Controls.Add(temp), und ich rate Ihnen, ein Top-PictureBox in for loop zu ändern alle PictureBox, wie diese zu lesen:

private void CreatetopPipes(int Number) 
{ 
    for (int i = 0; i <= Number; i++) 
    { 

     PictureBox temp = new PictureBox(); 
     panelName.Controls.Add(temp); 
     temp.Width = 50; 
     temp.Height = 350; 
     temp.BorderStyle = BorderStyle.FixedSingle; 
     temp.BackColor = Color.Red; 
     temp.Top = temp.Height * panelName.Controls.Count; 
     temp.Left = 300; 
     topPipe[i] = temp; 
     topPipe[i].Visible = true; 

    } 
} 
+0

vielen Dank :) –