示例#1
0
 public ClientViewModel(INavigationService navigationServe)
 {
     NavigationService = navigationServe;
     _tcpClient        = new TcpChatClient();
     _tcpClient.ReceivedMessageEvent += (a) => { InputMessage += a + "\n"; OnPropertyChanged("InputMessage"); Notificate(a); };
     EnterToChatCommand = new Command(EnterToChat);
     SendMessageCommand = new Command(SendMessage);
     LeaveChatCommand   = new Command(LeaveChat);
 }
        private void connectButton_Click(object sender, EventArgs e)
        {
            if (chatClient == null)
            {
                chatClient = new TcpChatClient();

                message.UserName       = CurrentUserData.UserName;
                message.SmileName      = CurrentUserData.SmileImagePath;
                message.CurrentMessage = "connect";
                message.FriendName     = "none";
                message.PrivateChat    = "none";
                message.NewUser        = "******";

                string buffer = message.Serialize(message);

                chatClient.InitializeConnection(buffer, CurrentUserData.ServerIpAddress);

                chatClient.CloseConnectionCallback += new Action <string>(AddMessageToList);
                chatClient.UpdateLogCallback       += new Action <string>(AddMessageToList);
                chatClient.AddUsersCallback        += new Action <string, string>(UserStatusChanged);
            }
        }