Hallo,
ich versteh einfach nicht wie ich aus dem Object wieder ne ArrayList bekomme..
private void button1_Click(object sender, EventArgs e)
{
Thread t = new Thread(new ParameterizedThreadStart(DoWork));
ArrayList al = new ArrayList();
al.Add("teil1");
al.Add(2);
t.Start(al);
}
private void DoWork(Object o)
{
// was nun hier mit dem Object 'o' machen?
}
bitte kanns mir wer erklären?
vielen Dank!
Gehen tut's so.
ArrayList al = o as ArrayList;
Erklären was da passiert; naja, da solltest du dir schon mal die Grundlangen von C# geben; sprich ein Buch lesen oder ein Blick nach links auf den Punkt "Ressourcen" im Hauptmenü von mychsharp.de werfen.
hi, was Jake geschrieben hat, prüft in diesem Fall ob das übergebene Objekt vom Typ ArrayList ist, wenn ja, dann wird es auch in ArrayList umgewandelt wenn nein, steht im Objekt null drinen womit könntest du überprüfen ob auch wirklich eine ArrayList übergeben wurde,was in diesem Fall ja nicht notwendig ist,weil du es ja weißt.
eine zweite möglichkeit wäre,dass du das übergebene Objekt castets:
ArrayList list = (ArrayList)obj;
fertig!!
lg rizi
dazu vielleicht mal kurz in die faq schauen:
[Tipp] Casten aber richtig: Begriffe wie Cast / is / as
(nur mal so als nebenhinweis 😉 )
Alles klar vielen Dank..
Typecast hatte ich im hinterkopf konnt aber irgendwie keine Querverbindung herstellen 🙂
gruß