public ChatViewModel() { dialogService = new DialogService(); currentRoom = new RoomModel(); listMessageModel = ListMessageModel.GetInstance(); sendersTyping = new ObservableCollection <string>(); socket = SocketAPI.GetInstance().GetSocket(); SendTextMessageCommand = new DelegateCommand(SendMessage); ItemSelectedCommand = new DelegateCommand <RoomModel>(HandleItemSelected); TypingCommand = new DelegateCommand <TextBox>(HandleTyping); ChangeImageCommand = new DelegateCommand(ChangeImage); SignOutCommand = new DelegateCommand(SignOut); DisplayTyping = "Hidden"; userInfo = UserInfo.GetInstance(); HandleSocket(); }
// method private void HandleSelectedItem(RoomModel obj) { currentRoom = obj; //emit to server to get message socket.Emit("room_change", obj.ID); int index = ListRoomModel.GetInstance().GetIndexByValue("ID", obj.ID); ListRoomModel.GetInstance().List[index].DisplayNewMessage = "Hidden"; ListRoomModel.GetInstance().List[index].NotifyChanged("DisplayNewMessage"); ListRoomModel.GetInstance().NotifyChanged("List"); //clear data in list message ListMessageModel.GetInstance().Clear(); // clear list task ListTaskModel.GetInstance().Clear(); }