private void BT_SendAddFriendMessage_Click(object sender, RoutedEventArgs e)
        {
            ContentControl bt  = sender as ContentControl;
            long           num = Convert.ToInt64(bt.Tag);

            SocketTool.GetClientUDP().SendToServer(TheMessageModel.MAKEFRIEND(UserSource.UloginNumber ?? 0, num, Model.MessageContent.MakeFriendType.SendStart));
        }
Exemple #2
0
 private void BT_Save_Click(object sender, RoutedEventArgs e)
 {
     UserSource.Uname     = TEXT_Name.Text;
     UserSource.Utag      = TEXT_Tag.Text;
     UserSource.Upassword = TEXT_Pwd.Text;
     SocketTool.GetClientUDP().SendToServer(TheMessageModel.UPDATE_USER(0, UserSource, HeadImageBytes));
 }
        private void MENUITEM_Friends_Click(object sender, RoutedEventArgs e)
        {
            MenuItem item         = (sender as MenuItem);
            User     SelectedUser = item.DataContext as User;

            switch (item.Tag.ToString().ToUpper())
            {
            case "DELETEFRIEND":
                SocketTool.GetClientUDP().SendToServer(TheMessageModel.MAKEFRIEND(UserSource.UloginNumber ?? 0, SelectedUser.UloginNumber ?? 0, MakeFriendType.Delete))
                ; break;
            }
        }
Exemple #4
0
 public override void OnApplyTemplate()
 {
     SocketClient       = SocketTool.GetClientUDP();
     SendMessageCommand = new ActionCommand(() =>
     {
         MessageContent_String MsgContent = new MessageContent_String(Text);
         MessageModel msg = new MessageModel(MessageType.String, UserFrom.UloginNumber ?? 0, UserTo.UloginNumber ?? 0, SocketTool.IPV4Address.ToString(), MsgContent);
         int MsgState     = SocketClient.SendTo(msg, StaticResource.ServerIpaddress);
         SendedMessage?.Invoke(this, UserFrom, UserTo, msg, MsgState);
         Text = "";
     });
     SendImageCommand = new ActionCommand(() =>
     {
         OpenFileDialog SelectDialog = new OpenFileDialog();
         SelectDialog.Multiselect    = true;
         SelectDialog.Filter         = "*.jpg|*.png";
         SelectDialog.ShowDialog();
         String[] files = SelectDialog.FileNames;
         long FromNum   = UserFrom.UloginNumber ?? 0;
         long ToNum     = UserTo.UloginNumber ?? 0;
         foreach (String file in files)
         {
             ThreadPool.QueueUserWorkItem(call =>
             {
                 String FileName = "";
                 SocketTool.TCPSendFile(file, FromNum, ToNum, DataPacketType.ImageDataPacket, out FileName);
                 MessageModel msg = TheMessageModel.IMAGE(FileName, FromNum, ToNum);
                 int MsgState     = SocketTool.GetClientUDP().SendToServer(msg);
                 //将自己选择的文件位置作为图片发送出去
                 MessageContent_Image localImg = MessageModel.ToModel <MessageContent_Image>(msg.MessageContent);
                 localImg.SetContent(file);
                 msg.MessageContent = localImg;
                 Dispatcher.Invoke(() =>
                 {
                     SendedMessage?.Invoke(this, UserFrom, UserTo, msg, MsgState);
                 });
                 Thread.Sleep(1000);
             });
         }
     });
     base.OnApplyTemplate();
 }