示例#1
0
        private void MyStream_OnInfo(EasyTCP.EasyTCP Sender, ushort Code, object Value)
        {
            string Message;

            switch (Code)
            {
            case 0:
                SendMessage(Sender, (Dic[Sender] = Value.ToString()) + " joined");
                return;

            case 2:
                Message = string.Join(" ", Value as IEnumerable <int>);
                break;

            case 1:
            case 3:
            case 4:
                Message = Value.ToString();
                break;

            case 5:
            case 6:
                Do4All(TCP => TCP.Send(Code, Value), Sender);
                return;

            default: return;
            }

            SendMessage(Sender, string.Format("{0}> {1}", Dic[Sender], Message));
        }
示例#2
0
 private void Do4All(Action <EasyTCP.EasyTCP> Act, EasyTCP.EasyTCP Exclude = null)
 {
     foreach (var MS in Dic.Keys)
     {
         if (MS != Exclude)
         {
             Act(MS);
         }
     }
 }
示例#3
0
 private void MyStream_OnClosed(EasyTCP.EasyTCP S)
 {
     SendMessage(S, Dic[S] + " left");
     Dic.TryRemove(S, out _);
 }
示例#4
0
 private void SendMessage(EasyTCP.EasyTCP Exclude, string Msg)
 {
     Do4All(MS => MS.Send(1, Msg), Exclude);
     Invoke(() => TB.Inlines.Add(Msg + Environment.NewLine));
 }