예제 #1
0
        /// <summary>
        /// Метод. Создает новый дом и открывает диалоговое окно для его редактирования
        /// </summary>
        private void addToolStripMenuItem_Click(object sender, EventArgs e)
        {
            IHome           home;                                        // Дом
            IStreet         street;                                      // Улица, связанная с домом
            IComplex        complex;                                     // Комплекс, связанный с домом
            HomeForm        homeForm;                                    // Форма редактирования дома
            DataGridViewRow selectedRow;                                 // Выделенная строка

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

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

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

            home         = _homes.Create();                                  // Создать дом
            street       = _streets.Create();                                // Создать улицу, связаннуй с домом
            complex      = _complexes.Create();                              // Создать комплекс, связанный с домом
            home.Street  = street;                                           // Связать улицу с домом
            home.Complex = complex;                                          // Связать комплекс с домом

            homeForm = new HomeForm(home, _streets, _complexes, _districts); // Создать форму для редактирования дома

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

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

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

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

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

            SetButtonActivity();                                        // Задать активность элементов управления
        }
예제 #2
0
        /// <summary>
        /// Метод. Создает новую квартиру и открывает диалоговое окно для ее редактирования
        /// </summary>
        private void addToolStripMenuItem_Click(object sender, EventArgs e)
        {
            IApartment      apartment;                                  // Квартира
            IHome           home;                                       // Дом, связанный с квартирой
            ApartmentForm   apartmentForm;                              // Форма редактирования квартиры
            DataGridViewRow selectedRow;                                // Выделенная строка
            IObject         obj;

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

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

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

            apartment        = _apartments.Create();                    // Создать квартиру
            obj              = _objects.Create();
            home             = _homes.Create();                         // Создать дом, связанный с квартирой
            apartment.Home   = home;                                    // Связать дом с квартирой
            apartment.Object = obj;

            apartmentForm = new ApartmentForm(apartment, _homes, _objects); // Создать форму для редактирования квартиры

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

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

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

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

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

            SetButtonActivity();                                        // Задать активность элементов управления
        }