Example #1
0
 private void RecieveMessage()
 {
     isAlive = true;
     try
     {
         while (isAlive)
         {
             IMessage message = ChatUser.GetMessage();
             if (message is ClientsListMessage cl)
             {
                 var list = cl.GetUsersList();
                 this.Invoke(new MethodInvoker(() => { UsersListBox.Items.Clear(); }));
                 this.Invoke(new MethodInvoker(() => { UsersListBox.Items.AddRange(list.ToArray()); }));
             }
             else if (message is GoodbyMessage G)
             {
                 this.Invoke(new MethodInvoker(() => { ChatBox.Text += message.ToOutString(); }));
                 isAlive = false;
                 ChatUser.Close();
             }
             else
             {
                 this.Invoke(new MethodInvoker(() => { ChatBox.Text += message.ToOutString(); }));
             }
         }
     }
     catch (SystemException ex)
     {
         MessageBox.Show(ex.Message);
     }
     finally
     {
         ChatUser.Close();
     }
 }