Пример #1
0
        /// <summary>
        /// Инициализация элементов управления объекта (создание, размещение)
        /// </summary>
        private void InitializeComponent()
        {
            DataGridView dgv = null;

            // переменные для инициализации кнопок "Добавить", "Удалить"
            ASUTP.Control.DropDownButton btnDropDown  = null;
            int    iButtonDropDownMenuItem            = -1;
            string strPartLabelButtonDropDownMenuItem = string.Empty;

            string[]      arLabelButtonDropDownMenuItem     = new string[] { @"точку", @"функцию" };
            INDEX_CONTROL indxControlButtonDropDownMenuItem = INDEX_CONTROL.UNKNOWN;
            ToolStripItem menuItem;

            this.SuspendLayout();

            //Добавить кнопки
            INDEX_CONTROL i = INDEX_CONTROL.BUTTON_SAVE;

            for (i = INDEX_CONTROL.BUTTON_ADD; i < (INDEX_CONTROL.BUTTON_UPDATE + 1); i++)
            {
                switch (i)
                {
                case INDEX_CONTROL.BUTTON_ADD:
                case INDEX_CONTROL.BUTTON_DELETE:
                    btnDropDown = new ASUTP.Control.DropDownButton();
                    addButton(btnDropDown, i.ToString(), (int)i, m_arButtonText[(int)i]);

                    btnDropDown.ContextMenuStrip = new System.Windows.Forms.ContextMenuStrip();
                    if (i == INDEX_CONTROL.BUTTON_ADD)
                    {
                        strPartLabelButtonDropDownMenuItem = @"Добавить";
                    }
                    else
                    if (i == INDEX_CONTROL.BUTTON_DELETE)
                    {
                        strPartLabelButtonDropDownMenuItem = @"Удалить";
                    }
                    else
                    {
                        ;
                    }

                    // п.меню для операции с точкой
                    indxControlButtonDropDownMenuItem = i == INDEX_CONTROL.BUTTON_ADD ? INDEX_CONTROL.MENUITEM_ADD_POINT :
                                                        i == INDEX_CONTROL.BUTTON_DELETE ? INDEX_CONTROL.MENUITEM_DELETE_POINT : INDEX_CONTROL.UNKNOWN;
                    iButtonDropDownMenuItem = btnDropDown.ContextMenuStrip.Items.Add(new ToolStripMenuItem());
                    menuItem      = btnDropDown.ContextMenuStrip.Items[iButtonDropDownMenuItem];
                    menuItem.Text = strPartLabelButtonDropDownMenuItem + @" " + arLabelButtonDropDownMenuItem[iButtonDropDownMenuItem];
                    menuItem.Name = indxControlButtonDropDownMenuItem.ToString();

                    // п.меню для операции с функцией
                    indxControlButtonDropDownMenuItem = i == INDEX_CONTROL.BUTTON_ADD ? INDEX_CONTROL.MENUITEM_ADD_FUNCTION :
                                                        i == INDEX_CONTROL.BUTTON_DELETE ? INDEX_CONTROL.MENUITEM_DELETE_FUNCTION : INDEX_CONTROL.UNKNOWN;
                    iButtonDropDownMenuItem = btnDropDown.ContextMenuStrip.Items.Add(new ToolStripMenuItem());
                    menuItem      = btnDropDown.ContextMenuStrip.Items[iButtonDropDownMenuItem];
                    menuItem.Text = strPartLabelButtonDropDownMenuItem + @" " + arLabelButtonDropDownMenuItem[iButtonDropDownMenuItem];
                    menuItem.Name = indxControlButtonDropDownMenuItem.ToString();
                    break;

                default:
                    addButton(i.ToString(), (int)i, m_arButtonText[(int)i]);
                    break;
                }
            }

            //заблокировать кнопку добавить
            //Button btn = ((Button)Controls.Find(INDEX_CONTROL.BUTTON_ADD.ToString(), true)[0]);
            //btn.Enabled = false;

            //Поиск функции
            TextBox txtbx_find = new TextBox();

            txtbx_find.Name = INDEX_CONTROL.TEXTBOX_FIND.ToString();
            txtbx_find.Dock = DockStyle.Fill;

            //Подпись поиска
            System.Windows.Forms.Label lbl_find = new System.Windows.Forms.Label();
            lbl_find.Name = INDEX_CONTROL.LABEL_FIND.ToString();
            lbl_find.Dock = DockStyle.Bottom;
            (lbl_find as System.Windows.Forms.Label).Text = @"Поиск";

            //Группировка поиска
            //и его подписи
            TableLayoutPanel tlp = new TableLayoutPanel();

            tlp.Name         = INDEX_CONTROL.PANEL_FIND.ToString();
            tlp.Dock         = DockStyle.Fill;
            tlp.AutoSize     = true;
            tlp.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowOnly;
            tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 15F));
            tlp.Controls.Add(lbl_find);
            tlp.Controls.Add(txtbx_find);
            this.Controls.Add(tlp, 1, 0);
            this.SetColumnSpan(tlp, 4);
            this.SetRowSpan(tlp, 1);

            //Таблица с функциями
            dgv      = new DataGridView();
            dgv.Name = INDEX_CONTROL.DGV_NALG.ToString();
            i        = INDEX_CONTROL.DGV_NALG;
            dgv.Dock = DockStyle.Fill;
            //Разместить эл-т упр-я
            this.Controls.Add(dgv, 1, 1);
            this.SetColumnSpan(dgv, 4);
            this.SetRowSpan(dgv, 5);

            dgv.ReadOnly = true;
            //Запретить выделение "много" строк
            dgv.MultiSelect = false;
            //Установить режим выделения - "полная" строка
            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            //Установить режим "невидимые" заголовки столбцов
            dgv.ColumnHeadersVisible = true;
            //Отменить возможность добавления строк
            dgv.AllowUserToAddRows = false;
            //Отменить возможность удаления строк
            dgv.AllowUserToDeleteRows = false;
            //Отменить возможность изменения порядка следования столбцов строк
            dgv.AllowUserToOrderColumns = false;
            //Не отображать заголовки строк
            dgv.RowHeadersVisible = false;
            //Ширина столбцов под видимую область
            dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            //Отменить возможность изменения высоты строк
            dgv.AllowUserToResizeRows = false;
            dgv.ColumnCount           = 3;
            dgv.Columns[0].Name       = "Функция";
            dgv.Columns[1].Name       = "Описание";
            dgv.Columns[2].Name       = "ID_REC";
            dgv.Columns[2].Visible    = false;

            dgv.CellMouseDoubleClick += dgv_CellMouseDoubleClickNALG;
            dgv.CellEndEdit          += dgv_CellEndEditNALG;

            //Таблица с реперными точками
            dgv      = new DataGridView();
            dgv.Name = INDEX_CONTROL.DGV_VALUES.ToString();
            i        = INDEX_CONTROL.DGV_VALUES;
            dgv.Dock = DockStyle.Fill;
            //Разместить эл-т упр-я
            this.Controls.Add(dgv, 1, 6);
            this.SetColumnSpan(dgv, 4);
            this.SetRowSpan(dgv, 5);
            //Запретить редактирование
            dgv.ReadOnly = true;
            //Запретить выделение "много" строк
            dgv.MultiSelect = false;
            //Установить режим выделения - "полная" строка
            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            //Установить режим "невидимые" заголовки столбцов
            dgv.ColumnHeadersVisible = true;
            //Отменить возможность добавления строк
            dgv.AllowUserToAddRows = false;
            //Отменить возможность удаления строк
            dgv.AllowUserToDeleteRows = false;
            //Отменить возможность изменения порядка следования столбцов строк
            dgv.AllowUserToOrderColumns = false;
            //Не отображать заголовки строк
            dgv.RowHeadersVisible = false;
            //Ширина столбцов под видимую область
            dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            //Отменить возможность изменения высоты строк
            dgv.AllowUserToResizeRows = false;
            dgv.ColumnCount           = 5;
            dgv.Columns[0].Name       = "A1";
            dgv.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[1].Name = "A2";
            dgv.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[2].Name = "A3";
            dgv.Columns[2].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[3].Name = "F";
            dgv.Columns[3].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[4].Name    = "ID_REC";
            dgv.Columns[4].Visible = false;
            //обработчик нажатия мышки
            dgv.CellMouseDoubleClick += dgv_CellMouseDoubleClickValue;
            //обработчик редактирования ячейки
            dgv.CellEndEdit += dgv_CellEndEditValue;

            //Панель отображения графика
            this.m_zGraph_fTABLE             = new ZedGraphFTable();
            this.m_zGraph_fTABLE.m_This.Name = INDEX_CONTROL.ZGRAPH_fTABLE.ToString();
            this.m_zGraph_fTABLE.m_This.Dock = DockStyle.Fill;
            this.Controls.Add(this.m_zGraph_fTABLE.m_This, 2, 0);
            this.SetColumnSpan(this.m_zGraph_fTABLE.m_This, 8);
            this.SetRowSpan(this.m_zGraph_fTABLE.m_This, 10);
            this.m_zGraph_fTABLE.m_This.AutoScaleMode = AutoScaleMode.Font;

            //
            System.Windows.Forms.ComboBox cmb_bxParam = new ComboBox();
            cmb_bxParam.Name = INDEX_CONTROL.COMBOBOX_PARAM.ToString();
            cmb_bxParam.Dock = DockStyle.Fill;

            //Панель группировки калькулятора
            TableLayoutPanel tabl = new TableLayoutPanel();

            tabl.Name            = INDEX_CONTROL.TABLELAYOUTPANEL_CALC.ToString();
            tabl.Dock            = DockStyle.Fill;
            tabl.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.None;
            tabl.AutoSizeMode    = System.Windows.Forms.AutoSizeMode.GrowAndShrink;

            //Подписи для калькулятора
            System.Windows.Forms.Label lblValue = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A1";
            tabl.Controls.Add(lblValue, 0, 0);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A2";
            tabl.Controls.Add(lblValue, 1, 0);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A3";
            tabl.Controls.Add(lblValue, 2, 0);
            ////
            //lblValue = new System.Windows.Forms.Label();
            //lblValue.Dock = DockStyle.Bottom;
            //lblValue.Text = @"Результат";
            //tabl.Controls.Add(lblValue, 0, 2);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            (lblValue as System.Windows.Forms.Label).Text = @"Значение F";
            tabl.Controls.Add(lblValue, 3, 0);

            //Текстовые поля для данных калькулятора
            TextBox tbValue = new TextBox();

            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A1.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 0, 1);

            tbValue              = new TextBox();
            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A2.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 1, 1);

            tbValue              = new TextBox();
            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A3.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 2, 1);

            tbValue      = new TextBox();
            tbValue.Name = INDEX_CONTROL.TEXTBOX_F.ToString();
            //tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign = HorizontalAlignment.Right;
            tbValue.Dock      = DockStyle.Fill;
            tbValue.ReadOnly  = true;
            tabl.Controls.Add(tbValue, 3, 1);

            tabl.RowCount = 4;
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
            tabl.ColumnCount = 4;
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            //
            GroupBox gpBoxCalc = new GroupBox();

            gpBoxCalc.Name = INDEX_CONTROL.GRPBOX_CALC.ToString();
            gpBoxCalc.Text = @"Калькулятор значений";
            gpBoxCalc.Dock = DockStyle.Fill;
            gpBoxCalc.Controls.Add(tabl);
            this.Controls.Add(gpBoxCalc, 1, 11);
            this.SetColumnSpan(gpBoxCalc, 4);
            this.SetRowSpan(gpBoxCalc, 2);
            //
            addLabelDesc(INDEX_CONTROL.LABEL_DESC.ToString());

            ResumeLayout(false);
            PerformLayout();

            //Обработчика нажатия кнопок
            btnDropDown        = ((Button)Controls.Find(INDEX_CONTROL.BUTTON_ADD.ToString(), true)[0]) as ASUTP.Control.DropDownButton;
            btnDropDown.Click += new System.EventHandler(btnAddToPoint_OnClick);
            menuItem           = (btnDropDown.ContextMenuStrip.Items.Find(INDEX_CONTROL.MENUITEM_ADD_POINT.ToString(), true)[0]);
            menuItem.Click    += new System.EventHandler(btnAddToPoint_OnClick);
            menuItem           = (btnDropDown.ContextMenuStrip.Items.Find(INDEX_CONTROL.MENUITEM_ADD_FUNCTION.ToString(), true)[0]);
            menuItem.Click    += new System.EventHandler(btnAddToFunction_OnClick);
            btnDropDown        = ((Button)Controls.Find(INDEX_CONTROL.BUTTON_DELETE.ToString(), true)[0]) as ASUTP.Control.DropDownButton;
            btnDropDown.Click += new System.EventHandler(btnDeleteToPoint_OnClick);
            menuItem           = (btnDropDown.ContextMenuStrip.Items.Find(INDEX_CONTROL.MENUITEM_DELETE_POINT.ToString(), true)[0]);
            menuItem.Click    += new System.EventHandler(btnDeleteToPoint_OnClick);
            menuItem           = (btnDropDown.ContextMenuStrip.Items.Find(INDEX_CONTROL.MENUITEM_DELETE_FUNCTION.ToString(), true)[0]);
            menuItem.Click    += new System.EventHandler(btnDeleteToFunction_OnClick);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_SAVE.ToString(), true)[0]).Click   += new System.EventHandler(panelTepCommon_btnSave_onClick);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_UPDATE.ToString(), true)[0]).Click += new System.EventHandler(panelTepCommon_btnUpdate_onClick);
            //((Button)Controls.Find(INDEX_CONTROL.BUTTON_CALC.ToString(), true)[0]).Click += new EventHandler(PluginPrjTepFTable_ClickRez);

            //Обработчики событий
            // для отображения таблиц
            dgv = Controls.Find(INDEX_CONTROL.DGV_NALG.ToString(), true)[0] as DataGridView;
            dgv.SelectionChanged += new EventHandler(dgvnALG_onSelectionChanged);
            //// для определения признака удаления (ФУНКЦИЮ или точку)
            //dgv.RowEnter += new DataGridViewCellEventHandler(dgvnALG_OnRowEnter);
            //dgv.Leave += new EventHandler (dgvnALG_OnLeave);
            dgv = Controls.Find(INDEX_CONTROL.DGV_VALUES.ToString(), true)[0] as DataGridView;
            dgv.SelectionChanged += new EventHandler(dgvValues_onSelectionChanged);
            //// для определения признака удаления (функцию или ТОЧКУ)
            //dgv.RowEnter += new DataGridViewCellEventHandler(dgvValues_OnRowEnter);
            //dgv.Leave += new EventHandler(dgvValues_OnLeave);
            // для поля ввода при поиске функции
            ((TextBox)Controls.Find(INDEX_CONTROL.TEXTBOX_FIND.ToString(), true)[0]).TextChanged += new EventHandler(PluginPrjTepFTable_TextChanged);
        }
Пример #2
0
        /// <summary>
        /// Инициализация компонентов
        /// </summary>
        private void InitializeComponent()
        {
            DataGridView dgv = null;

            //Control ctrl = null;

            this.SuspendLayout();

            //Добавить кнопки
            INDEX_CONTROL i = INDEX_CONTROL.BUTTON_SAVE;

            for (i = INDEX_CONTROL.BUTTON_SAVE; i < (INDEX_CONTROL.BUTTON_UPDATE + 1); i++)
            {
                addButton(i.ToString(), (int)i, m_arButtonText[(int)i]);
            }

            //Поиск функции
            TextBox txtbx_find = new TextBox();

            txtbx_find.Name = INDEX_CONTROL.TEXTBOX_FIND.ToString();
            txtbx_find.Dock = DockStyle.Fill;

            //Подпись поиска
            System.Windows.Forms.Label lbl_find = new System.Windows.Forms.Label();
            lbl_find.Name = INDEX_CONTROL.LABEL_FIND.ToString();
            lbl_find.Dock = DockStyle.Bottom;
            (lbl_find as System.Windows.Forms.Label).Text = @"Поиск";

            //Группировка поиска
            //и его подписи
            TableLayoutPanel tlp = new TableLayoutPanel();

            tlp.Name         = INDEX_CONTROL.PANEL_FIND.ToString();
            tlp.Dock         = DockStyle.Fill;
            tlp.AutoSize     = true;
            tlp.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowOnly;
            tlp.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 15F));
            tlp.Controls.Add(lbl_find);
            tlp.Controls.Add(txtbx_find);
            this.Controls.Add(tlp, 1, 0);
            this.SetColumnSpan(tlp, 4);
            this.SetRowSpan(tlp, 1);

            //Таблица с функциями
            dgv      = new DataGridView();
            dgv.Name = INDEX_CONTROL.DGV_NALG.ToString();
            i        = INDEX_CONTROL.DGV_NALG;
            dgv.Dock = DockStyle.Fill;
            //Разместить эл-т упр-я
            this.Controls.Add(dgv, 1, 1);
            this.SetColumnSpan(dgv, 4);
            this.SetRowSpan(dgv, 5);

            dgv.ReadOnly = true;
            //Запретить выделение "много" строк
            dgv.MultiSelect = false;
            //Установить режим выделения - "полная" строка
            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            //Установить режим "невидимые" заголовки столбцов
            dgv.ColumnHeadersVisible = true;
            //Отменить возможность добавления строк
            dgv.AllowUserToAddRows = false;
            //Отменить возможность удаления строк
            dgv.AllowUserToDeleteRows = false;
            //Отменить возможность изменения порядка следования столбцов строк
            dgv.AllowUserToOrderColumns = false;
            //Не отображать заголовки строк
            dgv.RowHeadersVisible = false;
            //Ширина столбцов под видимую область
            dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            //Отменить возможность изменения высоты строк
            dgv.AllowUserToResizeRows = false;
            dgv.ColumnCount           = 3;
            dgv.Columns[0].Name       = "Функция";
            dgv.Columns[1].Name       = "Описание";
            dgv.Columns[2].Name       = "ID_REC";
            dgv.Columns[2].Visible    = false;

            //Таблица с реперными точками
            dgv      = new DataGridView();
            dgv.Name = INDEX_CONTROL.DGV_VALUES.ToString();
            i        = INDEX_CONTROL.DGV_VALUES;
            dgv.Dock = DockStyle.Fill;
            //Разместить эл-т упр-я
            this.Controls.Add(dgv, 1, 6);
            this.SetColumnSpan(dgv, 4);
            this.SetRowSpan(dgv, 4);

            dgv.ReadOnly = true;
            //Запретить выделение "много" строк
            dgv.MultiSelect = false;
            //Установить режим выделения - "полная" строка
            dgv.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
            //Установить режим "невидимые" заголовки столбцов
            dgv.ColumnHeadersVisible = true;
            //Отменить возможность добавления строк
            dgv.AllowUserToAddRows = false;
            //Отменить возможность удаления строк
            dgv.AllowUserToDeleteRows = false;
            //Отменить возможность изменения порядка следования столбцов строк
            dgv.AllowUserToOrderColumns = false;
            //Не отображать заголовки строк
            dgv.RowHeadersVisible = false;
            //Ширина столбцов под видимую область
            dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            //Отменить возможность изменения высоты строк
            dgv.AllowUserToResizeRows = false;
            dgv.ColumnCount           = 5;
            dgv.Columns[0].Name       = "A1";
            dgv.Columns[0].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[1].Name = "A2";
            dgv.Columns[1].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[2].Name = "A3";
            dgv.Columns[2].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[3].Name = "F";
            dgv.Columns[3].DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleRight;
            dgv.Columns[4].Name    = "ID_REC";
            dgv.Columns[4].Visible = false;

            //Панель отображения графика
            this.m_zGraph_fTABLE             = new ZedGraphFTable();
            this.m_zGraph_fTABLE.m_This.Name = INDEX_CONTROL.ZGRAPH_fTABLE.ToString();
            this.m_zGraph_fTABLE.m_This.Dock = DockStyle.Fill;
            this.Controls.Add(this.m_zGraph_fTABLE.m_This, 2, 0);
            this.SetColumnSpan(this.m_zGraph_fTABLE.m_This, 8);
            this.SetRowSpan(this.m_zGraph_fTABLE.m_This, 10);
            this.m_zGraph_fTABLE.m_This.AutoScaleMode = AutoScaleMode.Font;

            //
            System.Windows.Forms.ComboBox cmb_bxParam = new ComboBox();
            cmb_bxParam.Name = INDEX_CONTROL.COMBOBOX_PARAM.ToString();
            cmb_bxParam.Dock = DockStyle.Fill;

            //Панель группировки калькулятора
            TableLayoutPanel tabl = new TableLayoutPanel();

            tabl.Name            = INDEX_CONTROL.TABLELAYOUTPANEL_CALC.ToString();
            tabl.Dock            = DockStyle.Fill;
            tabl.CellBorderStyle = System.Windows.Forms.TableLayoutPanelCellBorderStyle.None;
            tabl.AutoSizeMode    = System.Windows.Forms.AutoSizeMode.GrowAndShrink;

            //Подписи для калькулятора
            System.Windows.Forms.Label lblValue = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A1";
            tabl.Controls.Add(lblValue, 0, 0);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A2";
            tabl.Controls.Add(lblValue, 1, 0);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Значение A3";
            tabl.Controls.Add(lblValue, 2, 0);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            lblValue.Text = @"Результат";
            tabl.Controls.Add(lblValue, 0, 2);
            //
            lblValue      = new System.Windows.Forms.Label();
            lblValue.Dock = DockStyle.Bottom;
            (lblValue as System.Windows.Forms.Label).Text = @"Значение F";
            tabl.Controls.Add(lblValue, 3, 0);

            //Текстовые поля для данных калькулятора
            TextBox tbValue = new TextBox();

            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A1.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 0, 1);

            tbValue              = new TextBox();
            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A2.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 1, 1);

            tbValue              = new TextBox();
            tbValue.Name         = INDEX_CONTROL.TEXTBOX_A3.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tabl.Controls.Add(tbValue, 2, 1);

            tbValue              = new TextBox();
            tbValue.Name         = INDEX_CONTROL.TEXTBOX_F.ToString();
            tbValue.TextChanged += tbCalcValue_onTextChanged;
            tbValue.TextAlign    = HorizontalAlignment.Right;
            tbValue.Dock         = DockStyle.Fill;
            tbValue.ReadOnly     = true;
            tabl.Controls.Add(tbValue, 3, 1);

            tbValue          = new TextBox();
            tbValue.Name     = INDEX_CONTROL.TEXTBOX_REZULT.ToString();
            tbValue.Dock     = DockStyle.Fill;
            tbValue.ReadOnly = true;
            tabl.Controls.Add(tbValue, 0, 3);
            tabl.SetColumnSpan(tbValue, 2);

            Button btn_rez = new Button();

            btn_rez.Name = INDEX_CONTROL.BUTTON_CALC.ToString();
            btn_rez.Text = "REZ";
            btn_rez.Dock = DockStyle.Top;
            tabl.Controls.Add(btn_rez, 3, 3);

            tabl.RowCount = 4;
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.AutoSize));
            tabl.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 20F));
            tabl.ColumnCount = 4;
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            tabl.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F));
            //
            GroupBox gpBoxCalc = new GroupBox();

            gpBoxCalc.Name = INDEX_CONTROL.GRPBOX_CALC.ToString();
            gpBoxCalc.Text = @"Калькулятор значений";
            gpBoxCalc.Dock = DockStyle.Fill;
            gpBoxCalc.Controls.Add(tabl);
            this.Controls.Add(gpBoxCalc, 0, 10);
            this.SetColumnSpan(gpBoxCalc, 5);
            this.SetRowSpan(gpBoxCalc, 3);
            //
            addLabelDesc(INDEX_CONTROL.LABEL_DESC.ToString());

            ResumeLayout(false);
            PerformLayout();

            //Обработчика нажатия кнопок
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_ADD.ToString(), true)[0]).Click    += new System.EventHandler(HPanelfTable_btnAdd_Click);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_DELETE.ToString(), true)[0]).Click += new System.EventHandler(HPanelfTAble_btnDelete_Click);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_SAVE.ToString(), true)[0]).Click   += new System.EventHandler(HPanelTepCommon_btnSave_Click);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_UPDATE.ToString(), true)[0]).Click += new System.EventHandler(HPanelTepCommon_btnUpdate_Click);
            ((Button)Controls.Find(INDEX_CONTROL.BUTTON_CALC.ToString(), true)[0]).Click   += new EventHandler(PluginPrjTepFTable_ClickRez);

            //Обработчики событий
            // для отображения таблиц
            ((DataGridView)Controls.Find(INDEX_CONTROL.DGV_NALG.ToString(), true)[0]).SelectionChanged   += new EventHandler(dgvnALG_onSelectionChanged);
            ((DataGridView)Controls.Find(INDEX_CONTROL.DGV_VALUES.ToString(), true)[0]).SelectionChanged += new EventHandler(dgvValues_onSelectionChanged);
            // для поля ввода при поиске функции
            ((TextBox)Controls.Find(INDEX_CONTROL.TEXTBOX_FIND.ToString(), true)[0]).TextChanged += new EventHandler(PluginPrjTepFTable_TextChanged);
        }