/// <summary> /// Метод. Создает новую картинку и открывает диалоговое окно для ее редактирования /// </summary> private void addButton_Click(object sender, EventArgs e) { IPicture picture; // Картинка PictureForm pictureForm; // Форма редактирования картинки DataGridViewRow selectedRow; // Выделенная строка int rowCount; // Общее количество картинок в списке int selectedRowIndex; // Индекс выделенной строки bool entityNeedSave; // Флаг необходимости сохранения сущности rowCount = entitiesDataGridView.Rows.Count; // Получить общее количество картинок в списке selectedRowIndex = 0; // Задать индекс выделенной строки if (rowCount > 0) // Проверить общее количество картинок { selectedRow = entitiesDataGridView.SelectedRows[0]; // Получить выделенную строку selectedRowIndex = selectedRow.Index; // Получить индекс выделенной строки } picture = _pictures.Create(); // Создать картинку pictureForm = new PictureForm(picture, _selectedApartment, _imageFolderPath); // Создать форму для редактирования картинки pictureForm.ShowDialog(); // Отобразить форму для редактирования картинки entityNeedSave = pictureForm.EntityNeedSave; // Получить значение флага необходимости сохранения сущности if (entityNeedSave == true) // Проверить флаг необходимости сохранения сущности { _pictures.Add(picture); // Добавить созданную картинку в список } if (_picturesApartment == null) { FillEntitiesDataGridView(); // Заполнить данными элемент отображения списка сущностей } else { FillEntitiesDataGridView2(_picturesApartment); } if (rowCount > 0) // Проверить общее количество картинок { SelectRow(selectedRowIndex); // Выделить строку } SetButtonActivity(); // Задать активность элементов управления }
/// <summary> /// Метод. Открывает диалоговое окно для редактирования выделенной картинки /// </summary> private void editButton_Click(object sender, EventArgs e) { IPicture picture; // Картинка PictureForm pictureForm; // Форма редактирования картинки DataGridViewRow selectedRow; // Выделенная строка int rowCount; // Общее количество строк в списке int selectedRowIndex; // Индекс выделенной строки int id; // Идентификатор выделенной картинки bool entityNeedSave; // Флаг необходимости сохранения сущности rowCount = entitiesDataGridView.Rows.Count; // Получить общее количество строк в списке if (rowCount > 0) // Проверить общее количество строк { selectedRow = entitiesDataGridView.SelectedRows[0]; // Получить выделенную строку selectedRowIndex = selectedRow.Index; // Получить индекс выделенной строки id = Convert.ToInt32(selectedRow.Cells["id"].Value); // Получить идентификатор картинки в выделенной строке picture = _pictures.GetPicture(id); // Получить выделенную картинку pictureForm = new PictureForm(picture, _selectedApartment, _imageFolderPath); // Создать форму для редактирования картинки pictureForm.ShowDialog(); // Отобразить форму для редактирования картиннки entityNeedSave = pictureForm.EntityNeedSave; // Получить значение флага необходимости сохранения сущности if (entityNeedSave == true) // Проверить флаг необходимости сохранения сущности { _pictures.SaveChanges(); // Сохранить изменения списка картинок } if (_picturesApartment == null) { FillEntitiesDataGridView(); // Заполнить данными элемент отображения списка сущностей } else { FillEntitiesDataGridView2(_picturesApartment); } SelectRow(selectedRowIndex); // Выделить строку } }