示例#1
0
        public SverParamForm(List <FromDataBaseWide> fromDataBaseWide, Form Owner)
        {
            InitializeComponent();

            try
            {
                if (Svera.Properties.Settings.Default.SverParamSize != new Size(0, 0))
                {
                    this.Size = Svera.Properties.Settings.Default.SverParamSize;
                }
                //if (Svera.Properties.Settings.Default.SverParamLocation != new Point(0, 0))
                //{
                //    this.Location = Svera.Properties.Settings.Default.SverParamLocation;
                //}

                sveraP = new SveraParam(FromDataBaseWide.CompleteFromList(fromDataBaseWide), false);

                if (SveraP.ColList.Count > 0)
                {
                    DataGridViewColumn[] dataGridColSver = new DataGridViewColumn[SveraP.ColList.Count];
                    ColumnNames          colName;

                    for (int i = 0; i <= SveraP.ColList.Count - 1; i++)
                    {
                        colName                       = SveraP.ColList[i];
                        dataGridColSver[i]            = new DataGridViewTextBoxColumn();
                        dataGridColSver[i].Name       = colName.nameColumn;
                        dataGridColSver[i].HeaderText = colName.textColumn;
                        dataGridColSver[i].SortMode   = DataGridViewColumnSortMode.NotSortable;
                        //if (i == 0)
                        //{
                        dataGridColSver[i].ReadOnly = colName.readOnly;
                        //}
                    }

                    sverPDataGrid.Columns.AddRange(dataGridColSver);
                    sverPDataGrid.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
                    sverPDataGrid.Columns[SveraParam.ColDatagridNames.Value].DefaultCellStyle.WrapMode = DataGridViewTriState.True;
                }

                if (SveraP.RowList.Count > 0)
                {
                    DataGridViewRow[] dataGridRowSver = new DataGridViewRow[SveraP.RowList.Count];
                    RowsNames         rowName;

                    for (int i = 0; i <= SveraP.RowList.Count - 1; i++)
                    {
                        rowName            = SveraP.RowList[i];
                        dataGridRowSver[i] = new DataGridViewRow();
                        dataGridRowSver[i].CreateCells(sverPDataGrid);

                        if (SveraP.RowList[i].dataCellType == typeof(DataGridViewComboBoxCell))
                        {
                            DataGridViewComboBoxCell cc = new DataGridViewComboBoxCell();
                            cc.FlatStyle = FlatStyle.Flat;
                            if (SveraP.RowList[i].ArrayValue != null)
                            {
                                cc.Items.AddRange(SveraP.RowList[i].ArrayValue);
                            }
                            dataGridRowSver[i].Cells[sverPDataGrid.Columns[SveraParam.ColDatagridNames.Value].Index] = cc;
                        }
                        dataGridRowSver[i].Cells[sverPDataGrid.Columns[SveraParam.ColDatagridNames.Parametr].Index].Value = SveraP.RowList[i].textRow;
                        dataGridRowSver[i].Tag = SveraP.RowList[i].nameRow;

                        if (SveraP.RowList[i].readonlyT == true)
                        {
                            dataGridRowSver[i].ReadOnly = true;
                        }

                        if (SveraP.RowList[i].redact == true)
                        {
                            DataGridViewButtonCell bb = new DataGridViewButtonCell();
                            bb.FlatStyle       = FlatStyle.Flat;
                            bb.Value           = "Ред.";
                            bb.Style.BackColor = Color.LightGray;
                            dataGridRowSver[i].Cells[sverPDataGrid.Columns[SveraParam.ColDatagridNames.Redact].Index] = bb;
                        }
                    }

                    sverPDataGrid.Rows.AddRange(dataGridRowSver);
                }
                ChangeSpec();
                SizeChange();

                load = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
                MessageBox.Show(ex.StackTrace);
                if (ex.InnerException != null)
                {
                    MessageBox.Show(ex.InnerException.ToString());
                }
            }
        }