Beispiel #1
0
        /// <summary>
        /// Метод. Создает новый комплекс на основе города и открывает диалоговое окно для его редактирования
        /// </summary>
        private void addByCityToolStripMenuItem_Click(object sender, EventArgs e)
        {
            IComplex        complex;                                     // Комплекс
            ComplexForm     complexForm;                                 // Форма редактирования комплекса
            CitySelectForm  citySelectForm;                              // Форма выбора города
            DataGridViewRow selectedRow;                                 // Выделенная строка

            int  rowCount;                                               // Общее количество комплексов в списке
            int  selectedRowIndex;                                       // Индекс выделенной строки
            bool entityNeedSave;                                         // Флаг необходимости сохранения сущности

            rowCount = entitiesDataGridView.Rows.Count;                  // Получить общее количество комплексов в списке

            selectedRowIndex = 0;                                        // Задать индекс выделенной строки
            if (rowCount > 0)                                            // Проверить общее количество комплексов
            {
                selectedRow      = entitiesDataGridView.SelectedRows[0]; // Получить выделенную строку
                selectedRowIndex = selectedRow.Index;                    // Получить индекс выделенной строки
            }

            complex = _complexes.Create();                              // Создать комплекс

            citySelectForm = new CitySelectForm(                        // Создать форму выбора города
                _cities);

            citySelectForm.ShowDialog();                                // Отобразить форму выбора города

            complex.City = citySelectForm.SelectedCity;                 // Связать город с комплексом

            if (complex.City != null)                                   // Проверить связанный с комплексов город
            {
                complexForm = new ComplexForm(complex, _cities);        // Создать форму для редактирования комплекса

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

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

                if (entityNeedSave == true)                             // Проверить флаг необходимости сохранения сущности
                {
                    _complexes.Add(complex);                            // Добавить созданный комплекс в список
                }

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

                if (rowCount > 0)                                       // Проверить общее количество комплексов
                {
                    SelectRow(selectedRowIndex);                        // Выделить строку
                }

                SetButtonActivity();                                    // Задать активность элементов управления
            }
        }
Beispiel #2
0
        /// <summary>
        /// Метод. Открывает диалоговое окно для редактирования выделенного комплекса
        /// </summary>
        private void editButton_Click(object sender, EventArgs e)
        {
            IComplex        complex;                                        // Комплекс
            ComplexForm     complexForm;                                    // Форма редактирования комплекса
            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);        // Получить идентификатор комплекса в выделенной строке

                complex = _complexes.GetComplex(id);                        // Получить выделенный комплекс

                complexForm = new ComplexForm(complex, _cities);            // Создать форму для редактирования комплекса

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

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

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

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

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