//Вывод списка друзей текущего пользователя private void ListOfFriends_Click(object sender, EventArgs e) { NoResults.Visible = false; FoundedPeople.Items.Clear(); //Очистка списка найденных пользователей на форме founded_people.Clear(); //Очистка списка найденных пользователей connection.InitializeFriends(your_account.ID.ToString(), founded_people); //Получение пользователей из списка друзей if (founded_people.Count == 0) //Если пользователей-друзей не найдено { NoResults.Visible = true; //Вывод на форму сообщения об отсутствии результатов } else//Если пользователи-друзья найдены { FillTable();//Заполнение списка найденных пользователей на форме } }
//Добавление/удаление из списка друзей(в зависимости от текущих отношений) private void Add_Delete_Click(object sender, EventArgs e) { List <User> CheckList = new List <User>(); //Буффер для хранения полученных пользователей connection.InitializeFriends(your_account.ID, CheckList); //Получение пользователей из списка друзей bool trigger = false; for (int m = 0; m < CheckList.Count; m++) //Проверка наличия выбранного пользователя в списке друзей { if (companion.ID == CheckList[m].ID) //Если присутствует { trigger = true; connection.DeleteFromFriends(your_account.ID, companion.ID);//Удаление из таблицы // Изменение отношения между текущим пользователем и данным пользователем в списке найденных пользователей for (int y = 0; y < users.Count; y++) { if (companion.ID == users[y].ID) { users[y].friend = false;//Более не является другом } } menu.FillTable();//Обновление списка выведенных пользователей break; } } if (trigger == false) //Добавление в список друзей { connection.AddToFriends(your_account.ID, companion.ID); //Добавление в таблицу //Установление статуса друга в списке объектов for (int y = 0; y < users.Count; y++) { if (companion.ID == users[y].ID) { users[y].friend = true; } } menu.FillTable();//Обновление списка выведенных пользователей } menu.Enabled = true; Close(); }