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);
            }
        }
예제 #2
0
        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);
                }));
            }
        }