Курсовая работа: Разработка структуры класса "Адресное бюро"
FlatAdr.SetKorpus(Convert.ToUInt32(textBox7.Text));
Если были заполнены не все поля, программа вызовет MessageBox с ошибкой. Далее данные передаются из формы добавления в главную форму. После добавления данные заносятся в специальный контейнер List<>. В угловых скобках пишется тип данных этого контейнера. В зависимости от того какая вкладка была активной, данные добавляются в соответствующий класс. Функция добавления приведена ниже:
switch (tabControl1.SelectedIndex)
{case 0:
list.Add(form.FlatAdr);
dataGridView1.Rows.Add();
dataGridView1.Rows[list.Count - 1].Cells[0].Value = list[list.Count - 1].LastName;
dataGridView1.Rows[list.Count - 1].Cells[1].Value = list[list.Count - 1].FirstName;
dataGridView1.Rows[list.Count - 1].Cells[2].Value = list[list.Count - 1].MiddleName;
dataGridView1.Rows[list.Count - 1].Cells[3].Value = list[list.Count - 1].Town;
dataGridView1.Rows[list.Count - 1].Cells[4].Value = list[list.Count - 1].Street;
dataGridView1.Rows[list.Count - 1].Cells[5].Value = list[list.Count - 1].Number.ToString();
dataGridView1.Rows[list.Count - 1].Cells[6].Value = list[list.Count - 1].Korpus.ToString();
break;}
Для того чтобы удалить запись, нужно выбрать из таблицы необходимую строку. Программа считывает номер активной строки и присваивает его переменной. Затем встроенная функция контейнера Remove() удаляет элемент с указанным индексом. Далее обновляются данные в таблице. Функция удаления приведена ниже:
numb = Convert.ToInt32(dataGridView1.CurrentRow.Index);
list.Remove(list[numb]);
if (list.Count != 0)
dataGridView1.Rows.RemoveAt(list.Count - 1);
else
dataGridView1.Rows.RemoveAt(0);
for (int k = 0; k < list.Count; k++)
{dataGridView1.Rows[k].Cells[0].Value = list[k].LastName;
dataGridView1.Rows[k].Cells[1].Value = list[k].FirstName;
dataGridView1.Rows[k].Cells[2].Value = list[k].MiddleName;
dataGridView1.Rows[k].Cells[3].Value = list[k].Town;
dataGridView1.Rows[k].Cells[4].Value = list[k].Street;
dataGridView1.Rows[k].Cells[5].Value = list[k].Number.ToString();
dataGridView1.Rows[k].Cells[6].Value = list[k].Korpus.ToString();}