This.Controls.Find - Array Fehler ?

20/05/2010 - 09:04 von Karl Twele | Report spam
Hallo,

ich habe eine Reihe von OvalShape Objekten in meiner Form, bei diesen
Shapes möchte ich in einer Schleife zum Beispiel die Farbe setzten.

Objektnamen sind :

ovalShape1, ovalShape2 usw.

mein Code in der Schleife :

this.Controls.Find("ovalShape" + Convert.ToString(i),
false)[0].BackColor = Color.Red;

i = Schleifenzàhler

ich bekomme die Meldung, daß der Arrayindex, wahrscheinlich die [0]
ausserhalb des gültigen Bereichs ist.

Wer kann mir einen Tip geben, was falsch ist ?

Gruß KT
 

Lesen sie die antworten

#1 FrankDzaebel
20/05/2010 - 10:26 | Warnen spam
Hallo Karl,

ich habe eine Reihe von
OvalShape Objekten in meiner Form, bei
diesen Shapes möchte ich in einer
Schleife zum Beispiel die Farbe setzten. [...]
this.Controls.Find("ovalShape" + Convert.ToString(i),
false)[0].BackColor = Color.Red;



Schaue Dir "i" an, wenn die Exception aufgetreten ist.
Sagen wir, i ist dann 42, dann suche mit [Strg-Shift-F] nach
ovalShape42, ob das überhaupt enthalten ist.
Du könntest bspw. auch den maximalen Schleifen-Index
zu hoch gewàhlt haben ... etc.

BTW: Anstatt:
"ovalShape" + Convert.ToString(i),
ggf. einfacher:
"ovalShape" + i


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen