public static void LoadBanPairs(SqlDataReader reader) { while (reader.Read()) { BanPair banPair = new BanPair(); banPair.Id1 = (int)reader["UserID1"]; banPair.Id2 = (int)reader["UserID2"]; banPair.Status = (int)Statuses.unchanged; banPairs.Add(banPair); } }
private void Button_Click_4(object sender, RoutedEventArgs e) { if (usersInBan.SelectedValue != null) { User usToUnBan = null; int id = 0; foreach (User us in users) { if (us == usersInBan.SelectedValue) { id = us.UserID; usToUnBan = us; break; } } byte[] code = Encoding.UTF8.GetBytes("03"); client_socket.Send(code); IFormatter formatter = new BinaryFormatter(); Stream stream = new MemoryStream(); BanPair oldBP = new BanPair(); oldBP.Id1 = myId; oldBP.Id2 = id; formatter.Serialize(stream, oldBP); //byte[] b4 = ((MemoryStream)stream).ToArray(); byte[] buffer2 = new byte[1024]; stream.Position = 0; while (stream.Position < stream.Length) { int readCount = stream.Read(buffer2, 0, 1024); client_socket.Send(buffer2, readCount, 0); } stream.Close(); foreach (BanPair bP in banPairs) { if (bP.Id1 == myId && bP.Id2 == id) { banPairs.Remove(bP); break; } } usersInBan.SelectedIndex = -1; usersInBan.Items.Remove(usToUnBan); usersCombo.Items.Add(usToUnBan); //for (int i = 0; i < dictMesStack.Count; i++) //{ // if (dictMesStack.ElementAt(i).Key.UserID == id) // { // dictMesStack.ElementAt(i).Value.Visibility = System.Windows.Visibility.Visible; // } //} stacMess.Dispatcher.Invoke(new Action(() => { stacMess.Children.Clear(); })); //dictMesStack.Clear(); foreach (Message message in messages) { PrintMessage(message); } messScroll.Dispatcher.Invoke(new Action(() => { messScroll.ScrollToVerticalOffset(messScroll.ActualHeight); })); } }