Пример #1
0
        private void UpdateTextBox(string tekst)
        {
            if (tekst == "")
            {
                return;
            }
            string[] data = tekst.Split(';');
            switch (data[0])
            {
            case "Ingelogd":
                btnInloggen.Enabled    = false;
                btnRegistreren.Enabled = false;
                btnUitloggen.Enabled   = true;
                IK = new User(data[1]);
                break;

            case "Uitgelogd":
                btnInloggen.Enabled    = false;
                btnRegistreren.Enabled = false;
                btnUitloggen.Enabled   = false;
                btnVerbind.Enabled     = true;
                listBox1.Items.Clear();
                myNetworkStream.Close();
                mySocket.Shutdown(SocketShutdown.Both);
                break;

            case "Online users":
                listBox1.Items.Clear();
                OnlineUsers.Clear();
                for (int i = 1; i < data.Length; i++)
                {
                    listBox1.Items.Add(data[i].Split(',')[1]);
                    OnlineUsers.Add(new User(data[i]));
                }
                break;

            case "Bericht":
                // Bericht;zender.id;zender.user;ik.id;bericht
                ChatSessie[] it = Sessies.Where(T => T.Ontvanger.ID == Convert.ToInt32(data[1])).ToArray();
                if (it.Length == 1)
                {
                    it[0].OntvangBericht(data[2], data[4]);
                    it[0].BringToFront();
                    it[0].Activate();
                }
                else
                {
                    ChatSessie nieuw = new ChatSessie(this, OnlineUsers.Where(T => T.ID == Convert.ToInt32(data[1])).ElementAt(0));
                    nieuw.FormClosed += delegate { Sessies.Remove(nieuw); };
                    Sessies.Add(nieuw);
                    nieuw.Owner = this;
                    nieuw.Show();
                    nieuw.OntvangBericht(data[2], data[4]);
                }
                break;
            }
            txtOntvangen.AppendText(tekst + Environment.NewLine);
        }
Пример #2
0
 private void btnStartChat_Click(object sender, EventArgs e)
 {
     if (listBox1.SelectedIndex == -1)
     {
         return;
     }
     ChatSessie[] cs = Sessies.Where(T => T.Ontvanger == OnlineUsers[listBox1.SelectedIndex]).ToArray();
     if (cs.Length == 0)
     {
         ChatSessie nieuw = new ChatSessie(this, OnlineUsers[listBox1.SelectedIndex]);
         nieuw.FormClosed += delegate { Sessies.Remove(nieuw); };
         Sessies.Add(nieuw);
         nieuw.Owner = this;
         nieuw.Show();
     }
     else
     {
         cs.First().BringToFront();
         cs.First().Activate();
     }
 }