private void Form1_Load(object sender, EventArgs e) { this.timer1.Start(); UsersClass user = new UsersClass(); MessagesClass ms = new MessagesClass(); var Users = user.FetchSenderUsers(); var Rooms = ms.FetchRooms(); var currentUser = Users[CurrentUserID]; HashSet <MessagesClass.Rooms> rooms = new HashSet <MessagesClass.Rooms>(); HashSet <UsersClass.User> usersWithMessages = new HashSet <UsersClass.User>(); foreach (DataRow membership in ms.MembershipsWithUserId(CurrentUserID).Rows) { DataTable dt = new DataTable(); dt = ms.CompareUserNameAndRoomName((int)membership["room_id"]); if (dt != null) { var RoomId = (int)dt.Rows[0]["id"]; roomsx.Id = RoomId; currentUserRoomId = RoomId; foreach (var message in ms.GetMessagesOfRoom(RoomId)) { //InboxIndexId.Add(i, message.Sender_Id); //i++; //lst_inbox.Items.Add(message); usersWithMessages.Add(Users[message.Sender_Id]); } //var list = lst_inbox.Items.Cast<MessagesClass.Message>().OrderBy(item => item.Date).ToList(); //lst_inbox.Items.Clear(); //foreach (MessagesClass.Message listItem in list) //{ // lst_inbox.Items.Add(listItem); //} } } foreach (var usr in usersWithMessages) { //SenderIndexId.Add(usr.Id, j); //j++; lst_sender.Items.Add(usr); } foreach (DataRow dr in ms.Search_Rooms().Rows) { rooms.Add(Rooms[(int)dr["id"]]); } foreach (var room in rooms) { cmb_rooms.Items.Add(room); } btn_CountOfInbox.Text = lst_inbox.Items.Count.ToString(); lbl_welcomed.Text = "Hi " + currentUser.Name + " " + currentUser.Family; }
private void cmb_users_SelectedIndexChanged(object sender, EventArgs e) { UsersClass user = new UsersClass(); MessagesClass ms = new MessagesClass(); roomsx = (MessagesClass.Rooms)cmb_rooms.Items[cmb_rooms.SelectedIndex]; var Users = user.FetchSenderUsers(); var Rooms = ms.FetchRooms(); HashSet <UsersClass.User> usersWithMessages = new HashSet <UsersClass.User>(); lst_inbox.Items.Clear(); lst_sender.Items.Clear(); if (cmb_rooms.SelectedIndex == -1) { return; } else { var rooms = (MessagesClass.Rooms)cmb_rooms.Items[cmb_rooms.SelectedIndex]; NumberOfMembers = rooms.NumberOfMembers; //if (rooms.NumberOfMembers > 1) //{ foreach (var message in ms.GetMessagesOfRoom(rooms.Id)) { //if (InboxIndexId.ContainsKey(i) == false) //{ // InboxIndexId.Add(i, message.Sender_Id); // //i++; //} if (rooms.NumberOfMembers != 1) { lst_inbox.Items.Add(message); } usersWithMessages.Add(Users[message.Sender_Id]); } foreach (var usr in usersWithMessages) { //if (SenderIndexId.ContainsKey(usr.Id) == false) //{ // SenderIndexId.Add(usr.Id, j); // j++; //} lst_sender.Items.Add(usr); } // } //else //{ // foreach (var message in ms.GetMessagesOfRoom(roomsx.Id)) // { // //if (InboxIndexId.ContainsKey(i) == false) // //{ // // InboxIndexId.Add(i, message.Sender_Id); // // //i++; // //} // //lst_inbox.Items.Add(message); // usersWithMessages.Add(Users[message.Sender_Id]); // } // foreach (var usr in usersWithMessages) // { // //if (SenderIndexId.ContainsKey(usr.Id) == false) // //{ // // SenderIndexId.Add(usr.Id, j); // // j++; // //} // lst_sender.Items.Add(usr); // } //} } //btn_CountOfInbox.Text = lst_inbox.Items.Count.ToString(); }