C# dynamisch PictureBoxen erstellen

Ph1psL

Ensign
Registriert
Apr. 2011
Beiträge
193
Guten Morgen,

habe hier ein Problem. Ich möchte gerne in einer Klasse dynamisch 6 PictureBoxen erstellen, es funktioniert aber nicht.

Code:
public Uhr(Form form)
		{
       	
        	PictureBox[] Box;
        	Box = new PictureBox[6];
        	breite = 80;
        	hoehe = 90;
        
        	for(int i =0; i <5;i++)
        	{
     			form.Controls.Add(Box[i]);
        	 	Box[i].Left = i * breite;
        		Box[i].Width = breite;
        		Box[i].Height = hoehe;
        	}
        	

		}
Ich rufe die Klasse Uhr nun folgendermaßen in der MainForm auf:
Code:
uhr1= new Uhr(this);
Ich habe jedes Mal bei "Box.Left = i*breite" eine NullReferenceException.
Ja ich bin ein C#-Anfänger, aber ich brauche das für ein Schulprojekt.
Ich weiß nicht genau, was falsch ist, aber ich hoffe, ihr könnt mir helfen.
Danke ;)
 
Du musst im Loop erst eine Instanz der PictureBox-Klasse erstellen.

"Box = new PictureBox[6];" erstellt nur das Array, nicht die enthaltenen PictureBoxen.

Code:
public Uhr(Form form)
{
        PictureBox[] Box;
        Box = new PictureBox[6];
        breite = 80;
        hoehe = 90;
        
        for(int i =0; i <5;i++)
        {
                [B]Box[i] = new PictureBox();[/B]
     		form.Controls.Add(Box[i]);
         	Box[i].Left = i * breite;
        	Box[i].Width = breite;
        	Box[i].Height = hoehe;
        }
}
 

Ähnliche Themen

Zurück
Oben