コード例 #1
0
        /// <summary>
        /// Метод. Открывает диалоговое окно для редактирования выделенного документа
        /// </summary>
        private void editButton_Click(object sender, EventArgs e)
        {
            IDistrict       district;                                       // Документ
            DistrictForm    districtForm;                                   // Форма редактирования документа
            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);        // Получить идентификатор документа в выделенной строке

                district = _districts.GetDistrict(id);                      // Получить выделенный документ

                districtForm = new DistrictForm(district, _cities);         // Создать форму для редактирования документа

                districtForm.ShowDialog();                                  // Отобразить форму для редактирования документа

                entityNeedSave = districtForm.EntityNeedSave;               // Получить значение флага необходимости сохранения сущности

                if (entityNeedSave == true)                                 // Проверить флаг необходимости сохранения сущности
                {
                    _districts.SaveChanges();                               // Сохранить изменения списка документов
                }

                FillEntitiesDataGridView();                                 // Заполнить данными элемент отображения списка сущностей

                SelectRow(selectedRowIndex);                                // Выделить строку
            }
        }