Hallo zusammen,
ich hab folgendes Problem. Ich arbeite auf einem Board, darum kann ich keinen Backgroudworker benutzen und verwende statt dessen Threads, also insgesamt hab ich 2 Threads: GUI- und ein Server-Thread, der Meldungen empfängt und an die GUI sie weitergeben soll, damit sie dargestellt werden sollen.
Ich hab's folgendermaßen realisiert:
Auf der GUI-Seite gibt's entsprechend eine Methode SetTextToListBox1.
Leider wirft mir die SetText()-Methode schon eine ArgumentException.
Habt ihr vielleicht eine Idee woran es liegen könnte?
Grüße July
ich hab folgendes Problem. Ich arbeite auf einem Board, darum kann ich keinen Backgroudworker benutzen und verwende statt dessen Threads, also insgesamt hab ich 2 Threads: GUI- und ein Server-Thread, der Meldungen empfängt und an die GUI sie weitergeben soll, damit sie dargestellt werden sollen.
Ich hab's folgendermaßen realisiert:
Code:
private String server;
public Client(Form1 myForm1, String serv)
{
myForm = myForm1;
server = serv;
}
delegate void SetTextCallback(string text, Int16 position);
public void connection()
{....
try
{
//Connection succeed
//got message
SetText(data[0], Convert.ToInt16(data[1]));
...
}catch (ArgumentException ae)
{
...
}
catch (SocketException se)
{
....
}
}
private void SetText(string text, int position)
{
if (myForm.InvokeRequired)
{
SetTextCallback d = new SetTextCallback(
this.myForm.SetTextToListBox1);
myForm.Invoke(d, new object[] { text, position });
}
}
Auf der GUI-Seite gibt's entsprechend eine Methode SetTextToListBox1.
Leider wirft mir die SetText()-Methode schon eine ArgumentException.
Habt ihr vielleicht eine Idee woran es liegen könnte?
Grüße July