// Заполнение КомбоБокса данными из списка криминальных групп public static void InitializeComboBox(ListOfCriminalGroup listCriminalGroup, ComboBox BoxOfGroup) { BoxOfGroup.Items.Clear(); foreach (CriminalGroup criminalGroup in listCriminalGroup.criminalGroupData) { BoxOfGroup.Items.Add(criminalGroup.name); } }
// Метод для обновления основной таблицы, архива и группировок. public static void InintializeTable(ListOfCriminals directoryList, ListView criminalTable, ListOfCriminalGroup listCriminalGroup) { criminalTable.Items.Clear(); foreach (Criminal criminal in directoryList.Data) { AddColumns(criminal, criminalTable); CheckAndAddGroup(criminal, listCriminalGroup); } }
// Проверка на существование группы, заданой у преступника и соответственно создание таковой или добавление преступника в уже существующую. public static void CheckAndAddGroup(Criminal criminal, ListOfCriminalGroup listCriminalGroup) { foreach (CriminalGroup criminalGroup in listCriminalGroup.criminalGroupData) { if (criminalGroup.name == criminal.Group && criminal.Group != "Неизвестна") { criminalGroup.member.Add(criminal); return; } else if (criminal.Group == "Неизвестна") return; } CriminalGroup tempGroup = new CriminalGroup(); tempGroup.name = criminal.Group; tempGroup.member.Add(criminal); listCriminalGroup.criminalGroupData.Add(tempGroup); }
// Метод для создания списка преступных группировок и заполнения ими КомбоБокса. public static void InitializeFullGroupSystem(ListOfCriminals FullDirectory, ComboBox BoxofGroup, ListOfCriminalGroup GroupList) { BoxofGroup.Items.Clear(); GroupList.criminalGroupData.Clear(); foreach (Criminal criminal in FullDirectory.Data) { CheckAndAddGroup(criminal, GroupList); } InitializeComboBox(GroupList, BoxofGroup); }
// Метод для редактирования строки в таблице а также проверки списка группировок. public static void EditColumns(Criminal criminal, ListOfCriminals directoryList, int index, ListView criminalTable, ListOfCriminalGroup listCriminalGroup) { criminal.Index = index + 1; directoryList.Data[index] = criminal; criminalTable.Items.Clear(); }
// Метод удаления строки из таблицы. public static void DeleteColumns(int index, ListView criminalTable, ListOfCriminals directoryList, ListOfCriminalGroup listCriminalGroup) { directoryList.Data.RemoveAt(index); for (int i = index; i < directoryList.Data.Count; i++) directoryList.Data[i].Index += -1; criminalTable.Items.Clear(); }