viele pictureBoxen ansteuern

TheOnlyOmega

Grünschnabel
Hallo,

ich habe folgendes Problem:
habe auf der Form 260 pictureBoxen und wollte die eigentlich via schleife mit bildern belegen >>
Code:
von i=1 zu 260 mache 
{
pictureBox[i].load("bild.jpg");
}

aber so gehts natürich nicht. er nimmt die zahl in [] nicht bzw sieht "pictureBox"+[i] nicht als eine vorhandene PictureBox an.

leider hänge ich da nun schon seit 2 tagen drann und finde nichts passendes für mein problem.
Kann mi jemad heöfen?

MfG TheOnlyOmega
 
hmm in vb.net hätt ich dir helfen können^^
schau mal in der msdn library nach steuerelementarrays.
bei vb.net gibt es dort eine ausführliche beschreibung, müsste es eigentlich auch bei c# geben
 
steuerelementarray ist ja schonmal nen guter hinweis ^^

da stehts nun genau so drinne, wie ich es mir gedacht hatte.
trotzdem sagt er bei folgendem code, der in der for schleife ist:
Code:
pictureBox[i].Load("map/c.png");

Fehler 1 Der Name "pictureBox" ist im aktuellen Kontext nicht vorhanden.

also das macht langsam kein spaß mehr ^^
 
ich kann dir nur eine vb.net schreibweise anbieten (ist keine sehr gute aber sie funktioniert erstmal) und ich weiß auch nicht ob das in c# so direkt übersetzbar ist:

me.controls("picturebox" & i.tostring).image = PFAD
 
Fehler 1 Der Operator "&" kann nicht auf Operanden vom Typ "string" und "Methodengruppe" angewendet werden.

hmm und nen "+" anstelle des "&" geht auch nicht (selbe fehler meldung)
 
probier das mal

Code:
dim pic as picturebox
for each pic in me.controls  ' jede picturebox in form1 durchlaufen
 pic.image = "PFAD"          ' der gerade ausgewählten picbox ein image zuweisen  
next

der c# code ist wahrscheinlich etwas anders aber von der idee der gleiche
 
So, an alle beide:
Über der Eingabebox für Posts befindet sich ein netter Hinweis auf die Netiquette. Haltet euch bitte daran!

Zum Problem selbst:
Die Form hat eine Controls-Auflistung. Darin befinden sich auch alle PictureBoxen. Diese ist abzufragen. Beispiel:

C#:
foreach (Control c in this.Controls)
{
    if (c.GetType() == typeof(PictureBox))
        ((PictureBox)c).Image = Image.FromFile(@"C:\test.jpg");
}
 
Zurück