internal ChatTab GetChatTabBySocketAndRoomID(PengChat3ClientSock sock, uint roomid) { foreach (var tab in tabControl_Page.Items) { if (tab == tabItem_Main) continue; ChatTab item = (ChatTab)tab; if (item.Sock == sock && item.Room.ID == roomid) return item; } return null; }
public ChatTab(PengChat3ClientSock sock, Room room) { InitializeComponent(); Sock = sock; Room = room; Header = Room.Name; Members = new ObservableCollection<Member>(); listView_Members.ItemsSource = Members; button_Exit.Content = ResourceManager.GetStringByKey("Str_Exit"); }
private void LoginToServer() { if (textBox_ID.Text != "" && textBox_PW.Password != "" && textBox_IP.Text != "") { PengChat3ClientSock sock = new PengChat3ClientSock(); try { sock.OnLogin += sock_OnLogin; sock.OnDisconnected += sock_OnDisconnected; sock.OnRoomInfo += sock_OnRoomInfo; sock.OnCreateRoom += sock_OnCreateRoom; sock.OnRemoveRoom += sock_OnRemoveRoom; sock.OnAddClient += sock_OnAddClient; sock.OnRemoveClient += sock_OnRemoveClient; sock.OnGetMembers += sock_OnGetMembers; sock.OnReceiveChat += sock_OnReceiveChat; //sock.OnChangeState += sock_OnChangeState; //sock.OnChangeMaster += sock_OnChangeMaster; sock.Connect(textBox_IP.Text, App.Port); sock.Login(textBox_ID.Text, textBox_PW.Password); } catch (System.Net.Sockets.SocketException ex) { Utility.Error(ResourceManager.GetStringByKey("Str_CannotConnectToServer") + '\n' + ex.Message); if (sock != null) { sock.Dispose(); sock = null; } return; } } else { Utility.Error(ResourceManager.GetStringByKey("Str_EmptyLabel")); } }
internal ViewModel GetViewModelBySocket(PengChat3ClientSock sock) { ViewModel model = viewModel.Find(m => { return m.Sock == sock; }); return model; }
public ViewModel(PengChat3ClientSock sock) { Sock = sock; Rooms = new ObservableCollection<Room>(); }