protected abstract void addColumn(TepCommon.HandlerDbTaskCalculate.TECComponent comp, ModeAddColumn mode);
protected override void addColumn(TepCommon.HandlerDbTaskCalculate.TECComponent comp, ModeAddColumn mode) { throw new NotImplementedException(); }
/// <summary> /// Добавить столбец /// </summary> /// <param name="id_comp">Идентификатор компонента ТЭЦ</param> /// <param name="text">Текст для заголовка столбца</param> /// <param name="bVisibled">Признак участия в расчете/отображения</param> protected override void addColumn(TepCommon.HandlerDbTaskCalculate.TECComponent comp, ModeAddColumn mode) { int indxCol = -1; // индекс столбца при вставке DataGridViewContentAlignment alignText = DataGridViewContentAlignment.NotSet; DataGridViewAutoSizeColumnMode autoSzColMode = DataGridViewAutoSizeColumnMode.NotSet; try { // найти индекс нового столбца // столбец для станции - всегда крайний foreach (DataGridViewColumn col in Columns) { if ((((TepCommon.HandlerDbTaskCalculate.TECComponent)col.Tag).m_Id > 0) && (((TepCommon.HandlerDbTaskCalculate.TECComponent)col.Tag).m_Id < (int)TepCommon.HandlerDbTaskCalculate.TECComponent.TYPE.TG)) { indxCol = Columns.IndexOf(col); break; } else { ; } } DataGridViewColumn column = new DataGridViewTextBoxColumn(); column.Tag = comp; alignText = DataGridViewContentAlignment.MiddleRight; autoSzColMode = DataGridViewAutoSizeColumnMode.Fill; if (!(indxCol < 0)) // для вставляемых столбцов (компонентов ТЭЦ) { ; // оставить значения по умолчанию } else // для добавлямых столбцов { if ((mode & ModeAddColumn.Service) == ModeAddColumn.Service) // для служебных столбцов { if ((mode & ModeAddColumn.Visibled) == ModeAddColumn.Visibled) // только для столбца с [SYMBOL] { alignText = DataGridViewContentAlignment.MiddleLeft; autoSzColMode = DataGridViewAutoSizeColumnMode.AllCells; } else { ; } column.Frozen = true; column.ReadOnly = true; } else { ; } } column.HeaderText = comp.m_nameShr; column.DefaultCellStyle.Alignment = alignText; column.AutoSizeMode = autoSzColMode; column.Visible = (mode & ModeAddColumn.Visibled) == ModeAddColumn.Visibled; if (!(indxCol < 0)) { Columns.Insert(indxCol, column as DataGridViewTextBoxColumn); } else { Columns.Add(column as DataGridViewTextBoxColumn); } } catch (Exception e) { Logging.Logg().Exception(e , string.Format(@"DataGridViewTEPValues::AddColumn (id_comp={0}) - ...", comp.m_Id) , Logging.INDEX_MESSAGE.NOT_SET); } }