Problem med ArrayList
Jeg kæmper med et lille problem der drejer sig om at når jeg gentegner på min form(ved flere tegninger) får jeg en fejl. Der siger at det ikke er muligt at lave et sådanne cast men hvis jeg kun laver en tegning er der ikke nogen problemer.Fejlen bliber præsenteret ved den sidste tuborg-klamme({)
Som i kan se hedder mit ArrayList myAL.
Der hvor jeg tegner, er i 3 forskellige klasser der alle nedarver fra en abstract klasse GraphicObject med en funktion der tegner.
Programmet kan køre hvis jeg sætter myAL.Clear ind. Og tegne alle fra alle 3 klasser.
Main/OnPaint procedure er som følgende(uddrag af program):
static void Main()
{
Application.Run(new Form1());
}
protected override void OnPaint(PaintEventArgs pea)
{
Graphics gfx = pea.Graphics;
//foreach(ArrayList al in myAL)
for(int i = 0; i < myAL.Count; i++)
{
SetPoints sp = new SetPoints();
go = (GraphicObject) myAL[i++];
sp = (SetPoints)myAL[i++];
go.Draw(gfx,sp);
}
//myAL.Clear();
}
