private void backgroundWorker2_DoWork(object sender, DoWorkEventArgs e) { if (client.Connected) { STW.WriteLine(TextToSend); this.MessageScreentextBox.Invoke(new MethodInvoker(delegate() { MessageScreentextBox.AppendText("Me:" + TextToSend + "\n"); } )); } else { MessageBox.Show("Sending failed"); } backgroundWorker2.CancelAsync(); }
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { while (client.Connected) { try { recieve = STR.ReadLine(); this.MessageScreentextBox.Invoke(new MethodInvoker(delegate() { MessageScreentextBox.AppendText("You:" + recieve + "\n"); })); recieve = ""; } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } } }
private void ConnectButton_Click(object sender, EventArgs e) { client = new TcpClient(); IPEndPoint IpEnd = new IPEndPoint(IPAddress.Parse(ClientIPtextBox.Text), int.Parse(ClientPorttextBox.Text)); try { client.Connect(IpEnd); if (client.Connected) { MessageScreentextBox.AppendText("Connected to Server \n"); STR = new StreamReader(client.GetStream()); STW = new StreamWriter(client.GetStream()); STW.AutoFlush = true; backgroundWorker1.RunWorkerAsync(); backgroundWorker2.WorkerSupportsCancellation = true; } } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } }