Hallo,
bin neu hier und hoffe mir kann jemand helfen. Ich nähere mich auch gerade dem Thema Multithreading, allerdings unter C++. Ich habe jetzt eine CLI-Anwendung erstellt, welche eine Listbox enthält. In dieser möchte ich einfach ein paar Zwischenschritte ausgeben lassen, aber von einem anderen Thread aus. Zudem ist der Thread auch noch in einer anderen Klasse. Ich weiß nicht, ob das eventuell das Problem ist. Jedenfalls habe ich ja schon mitbekommen, dass man da mit diesem delegate arbeiten muss. Und nach tagelangem ausprobieren, habe ich endlich eine Version, bei der der Compiler nicht meckert. Das Problem ist nur, dass sich bei der Listbox gar nichts tut. Könnte mir da eventuell jemand bitte behilflich sein? Was mache ich falsch. Hier mal mein Quellcode (hoffentlich reicht das aus):
Klasse von dem Window-Form:
delegate void AddListItemMethod(String^ str);
AddListItemMethod^ myDelegate;
void AddListItemMethod(String^ str)
{
lbResults->Items->Add(str);
lbResults->Update();
}
Aufruf im Thread in einer anderen Klasse
PingTest::Form1^ AddListItemDelegate = gcnew PingTest::Form1;
AddListItemDelegate->AddListItemMethod("huhu");
Ich hoffe, ich habe das Thema nicht komplett missverstanden. Ich bin für jeden Hilfe dankbar.
Viele Grüße
Kati82