private void tsbSteelBaseParts_Click(object sender, EventArgs e) { if (lvDetails.SelectedIndices.Count == 1) { SteelColumnBase steelColumnBase; foreach (int i in lvDetails.SelectedIndices) { steelColumnBase = ((List <SteelColumnBase>)_objectList)[i]; var detailObjectList = new DetailObjectList("ColumnBaseParts", steelColumnBase, steelColumnBase.SteelBaseParts, false); detailObjectList.BtnVisibilityList = new List <short>() { 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 }; frmDetailList DetailForm = new frmDetailList(detailObjectList); this.Visible = false; DetailForm.ShowDialog(); this.Visible = true; EditItemFromSteelColumnBase(lvDetails.Items[i], steelColumnBase); } } else { MessageBox.Show("Выберите один элемент из списка", "Неверный выбор"); } }
private void tsbOpenings_Click(object sender, EventArgs e) { if (lvDetails.SelectedIndices.Count == 1) { Wall wall; foreach (int i in lvDetails.SelectedIndices) { wall = ((List <Wall>)_objectList)[i]; var detailObjectList = new DetailObjectList("OpeningPlacings", wall, wall.OpeningPlacingList, false); detailObjectList.BtnVisibilityList = new List <short>() { 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0 }; frmDetailList DetailForm = new frmDetailList(detailObjectList); this.Visible = false; DetailForm.ShowDialog(); this.Visible = true; EditItemFromWall(lvDetails.Items[i], wall); } } else { MessageBox.Show("Выберите один элемент из списка", "Неверный выбор"); } }
private void button1_Click(object sender, EventArgs e) { var detailObjectList = new DetailObjectList("Levels", ProgrammSettings.BuildingSite.BuildingList[0], ProgrammSettings.BuildingSite.BuildingList[0].LevelList, false); frmDetailList DetailForm = new frmDetailList(detailObjectList); DetailForm.Show(); }
private void tsbOpeningTypes_Click(object sender, EventArgs e) { Building building = (Building)_parentObject; var detailObjectList = new DetailObjectList("OpeningTypes", building, building.OpeningTypeList, false); frmDetailList DetailForm = new frmDetailList(detailObjectList); this.Visible = false; DetailForm.ShowDialog(); this.Visible = true; }
private static void ShowSteelBase() { var detailObjectList = new DetailObjectList("Levels", ProgrammSettings.BuildingSite.BuildingList[0], ProgrammSettings.BuildingSite.BuildingList[0].LevelList, false); detailObjectList.BtnVisibilityList = new List <short>() { 1, 1, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0 }; frmDetailList DetailForm = new frmDetailList(detailObjectList); DetailForm.Show(); }
private void tsbWallType_Click(object sender, EventArgs e) { Building building = (Building)_parentObject; var detailObjectList = new DetailObjectList("WallTypes", building, building.WallTypeList, false); frmDetailList DetailForm = new frmDetailList(detailObjectList); this.Visible = false; DetailForm.ShowDialog(); this.Visible = true; foreach (ListViewItem i in lvDetails.Items) { EditItemFromLevel(i, building.LevelList[i.Index]); } }
private void tsbWalls_Click(object sender, EventArgs e) { if (lvDetails.SelectedIndices.Count == 1) { Level level; foreach (int i in lvDetails.SelectedIndices) { level = ((List <Level>)_objectList)[i]; var detailObjectList = new DetailObjectList("Walls", level, level.WallList, false); frmDetailList DetailForm = new frmDetailList(detailObjectList); this.Visible = false; DetailForm.ShowDialog(); this.Visible = true; EditItemFromLevel(lvDetails.Items[i], level); } } else { MessageBox.Show("Выберите один элемент из списка", "Неверный выбор"); } }
public frmDetailList(DetailObjectList detailObjectList) { InitializeComponent(); _detailObjectList = detailObjectList; _formType = _detailObjectList.DataType; _parentObject = _detailObjectList.ParentObject; _objectList = _detailObjectList.ObjectList; _isSelectable = _detailObjectList.IsSelectable; lvDetails.Columns.Clear(); List <String> ColumnName = new List <String>(); List <Int32> ColumnWidth = new List <Int32>(); switch (_formType) // { case "Buildings": //Создаем окно для списка зданий { this.Text = "Здания"; List <String> _ColumnName = new List <String>() { "Наименование" }; List <Int32> _ColumnWidth = new List <Int32>() { 600 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); break; } case "Levels": //Создаем окно для списка уровней { this.Text = "Уровни"; List <String> _ColumnName = new List <String>() { "Наименование", "Отметка, м", "Высота, мм", "Перекрытие, мм", "Кол-во, шт.", "V_нетто (на этаж)", "V_нетто (всего)" }; List <Int32> _ColumnWidth = new List <Int32>() { 100, 100, 100, 100, 100, 150, 150 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var levelList = (List <Level>)_objectList; foreach (Level level in levelList) { NewItemFromLevel(level); } tsbWalls.Visible = true; tsbWallTypes.Visible = true; tsbOpeningTypes.Visible = true; tsbOpenings.Visible = false; tsbReport.Visible = true; break; } //Create window for Openings case "OpeningPlacings": { this.Text = "Проемы"; List <String> _ColumnName = new List <String>() { "Марка", "Привязка от начала, мм", "Привязка снизу, мм", "S_нетто, кв.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 250, 150, 150, 80 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var openingPlacingList = (List <OpeningPlacing>)_objectList; foreach (OpeningPlacing openingPlacing in openingPlacingList) { NewItemFromOpeningPlacing(openingPlacing); } tsbWalls.Visible = false; tsbWallTypes.Visible = false; tsbOpeningTypes.Visible = false; tsbOpenings.Visible = false; tsbReport.Visible = false; break; } //Create window for OpeningType case "OpeningTypes": { this.Text = "Типы проемов"; List <String> _ColumnName = new List <String>() { "Марка", "Назначение", "Ширина", "Высота", "Привязка снизу, мм", "Привязка сверху, мм", "Площадь, кв.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 250, 100, 100, 100, 100, 100, 100 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var openingTypeList = (List <OpeningType>)_objectList; foreach (OpeningType openingType in openingTypeList) { NewItemFromOpeningType(openingType); } tsbWalls.Visible = false; tsbWallTypes.Visible = false; tsbOpeningTypes.Visible = false; tsbOpenings.Visible = false; tsbReport.Visible = false; break; } //Создаем окно для списка стен case "Walls": { this.Text = "Стены"; List <String> _ColumnName = new List <String>() { "Марка", "Проемы", "Размеры, мм", "Верт.стерж.", "Гор.стерж.", "Диаг.стерж.", "S_брутто, кв.м", "S_нетто, кв.м", "V_брутто, куб.м", "V_нетто, куб.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 150, 100, 150, 100, 100, 100, 100, 100, 100, 100 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var wallList = (List <Wall>)_objectList; foreach (Wall wall in wallList) { NewItemFromWall(wall); } tsbWalls.Visible = false; tsbWallTypes.Visible = false; tsbOpeningTypes.Visible = false; tsbOpenings.Visible = true; tsbReport.Visible = true; break; } case "WallTypes": //Создаем окно для списка стен { this.Text = "Типы стен"; List <String> _ColumnName = new List <String>() { "Марка", "Толщина, мм", "Шаг верт, мм", "Шаг гор, мм" }; List <Int32> _ColumnWidth = new List <Int32>() { 300, 80, 80, 80 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var wallTypeList = (List <WallType>)_objectList; foreach (WallType wallType in wallTypeList) { NewItemFromWallType(wallType); } tsbWalls.Visible = false; tsbWallTypes.Visible = false; tsbOpeningTypes.Visible = false; tsbOpenings.Visible = false; tsbReport.Visible = false; break; } } foreach (String S in ColumnName) { lvDetails.Columns.Add(S); } for (int i = 0; i < lvDetails.Columns.Count; i++) { lvDetails.Columns[i].Width = ColumnWidth[i]; } for (int i = 1; i < lvDetails.Columns.Count; i++) { lvDetails.Columns[i].TextAlign = HorizontalAlignment.Center; } if (_isSelectable) { btnClose.Name = "Выбрать"; } else { btnClose.Name = "Закрыть"; } lvDetails.MultiSelect = !_isSelectable; }
public frmDetailList(DetailObjectList detailObjectList) { #region Получение входного объекта в конструкторе InitializeComponent(); _detailObjectList = detailObjectList; _formType = _detailObjectList.DataType; _parentObject = _detailObjectList.ParentObject; _objectList = _detailObjectList.ObjectList; _isSelectable = _detailObjectList.IsSelectable; lvDetails.Columns.Clear(); List <String> ColumnName = new List <String>(); List <Int32> ColumnWidth = new List <Int32>(); #endregion #region Определение видимости кнопок for (int i = 0; i < tspMain.Items.Count; i++) { tspMain.Items[i].Visible = false; } if (!(_detailObjectList.BtnVisibilityList == null)) { for (int i = 0; i < _detailObjectList.BtnVisibilityList.Count; i++) { if (_detailObjectList.BtnVisibilityList[i] == 0) { tspMain.Items[i].Visible = false; } else { tspMain.Items[i].Visible = true; } } } #endregion //В зависимости от вида объекта показываем нужные столбцы switch (_formType) // { case "Buildings": //Создаем окно для списка зданий { this.Text = "Здания"; List <String> _ColumnName = new List <String>() { "Наименование" }; List <Int32> _ColumnWidth = new List <Int32>() { 600 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); break; } case ObjLevels: //Создаем окно для списка уровней { this.Text = "Уровни"; List <String> _ColumnName = new List <String>() { "Наименование", "Отметка, м", "Высота, мм", "Перекрытие, мм", "Кол-во, шт.", "V_нетто (на этаж)", "V_нетто (всего)" }; List <Int32> _ColumnWidth = new List <Int32>() { 100, 100, 100, 100, 100, 150, 150 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var levelList = (List <Level>)_objectList; foreach (Level level in levelList) { NewItemFromLevel(level); } break; } //Create window for Openings case "OpeningPlacings": { this.Text = "Проемы"; List <String> _ColumnName = new List <String>() { "Марка", "Привязка от начала, мм", "Привязка снизу, мм", "S_нетто, кв.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 250, 150, 150, 80 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var openingPlacingList = (List <OpeningPlacing>)_objectList; foreach (OpeningPlacing openingPlacing in openingPlacingList) { NewItemFromOpeningPlacing(openingPlacing); } break; } //Create window for OpeningType case "OpeningTypes": { this.Text = "Типы проемов"; List <String> _ColumnName = new List <String>() { "Марка", "Назначение", "Ширина", "Высота", "Привязка снизу, мм", "Привязка сверху, мм", "Площадь, кв.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 250, 100, 100, 100, 100, 100, 100 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var openingTypeList = (List <OpeningType>)_objectList; foreach (OpeningType openingType in openingTypeList) { NewItemFromOpeningType(openingType); } break; } case ObjColumnBaseParts: { #region Определение видимых столбцов и их ширины this.Text = "Участки базы стальных колонн"; List <String> _ColumnName = new List <String>() { "Наименование", "Размеры, мм", "Макс. напряжения, МПа" }; List <Int32> _ColumnWidth = new List <Int32>() { 150, 100, 150 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); #endregion var basePartList = (List <SteelBasePart>)_objectList; foreach (SteelBasePart basePart in basePartList) { NewItemFromColumnBasePart(basePart); } break; } case ObjBarForses: { #region Определение видимых столбцов и их ширины this.Text = "Нагрузки на базы стальных колонн"; List <String> _ColumnName = new List <String>() { "Наименование", "Nz, кН", "Mx, кН*м", "My, кН*м", "Qx, кН", "Qx, кН" }; List <Int32> _ColumnWidth = new List <Int32>() { 150, 100, 100, 100, 100, 100 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); #endregion var LoadSetList = (List <BarLoadSet>)_objectList; foreach (BarLoadSet loadSet in LoadSetList) { NewItemFromColumnLoadSet(loadSet); } break; } case ObjSteelColumnBases: { this.Text = "Базы стальных колонн"; List <String> _ColumnName = new List <String>() { "Марка", "Размеры, мм", "Привязки болтов, мм", "Напряжения макс/мин" }; List <Int32> _ColumnWidth = new List <Int32>() { 150, 100, 150, 150 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var SteelColumnBaseList = (List <SteelColumnBase>)_objectList; foreach (SteelColumnBase columnBase in SteelColumnBaseList) { NewItemFromSteelColumnBase(columnBase); } break; } //Создаем окно для списка стен case ObjWalls: { this.Text = "Стены"; List <String> _ColumnName = new List <String>() { "Марка", "Проемы", "Размеры, мм", "Верт.стерж.", "Гор.стерж.", "Диаг.стерж.", "S_брутто, кв.м", "S_нетто, кв.м", "V_брутто, куб.м", "V_нетто, куб.м" }; List <Int32> _ColumnWidth = new List <Int32>() { 150, 100, 150, 100, 100, 100, 100, 100, 100, 100 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var wallList = (List <Wall>)_objectList; foreach (Wall wall in wallList) { NewItemFromWall(wall); } break; } case "WallTypes": //Создаем окно для списка стен { this.Text = "Типы стен"; List <String> _ColumnName = new List <String>() { "Марка", "Толщина, мм", "Шаг верт, мм", "Шаг гор, мм" }; List <Int32> _ColumnWidth = new List <Int32>() { 300, 80, 80, 80 }; ColumnName.AddRange(_ColumnName); ColumnWidth.AddRange(_ColumnWidth); var wallTypeList = (List <WallType>)_objectList; foreach (WallType wallType in wallTypeList) { NewItemFromWallType(wallType); } break; } } #region foreach (String S in ColumnName) { lvDetails.Columns.Add(S); } for (int i = 0; i < lvDetails.Columns.Count; i++) { lvDetails.Columns[i].Width = ColumnWidth[i]; } for (int i = 1; i < lvDetails.Columns.Count; i++) { lvDetails.Columns[i].TextAlign = HorizontalAlignment.Center; } if (_isSelectable) { btnClose.Name = "Выбрать"; } else { btnClose.Name = "Закрыть"; } lvDetails.MultiSelect = !_isSelectable; #endregion }