public CyADC_EditingControl(ICyInstEdit_v1 inst, CyADC_DelSigControl userControl, params string[] tabNames)
 {
     m_instEdit = inst;
     m_tabNames = new List<string>(tabNames);
     ADC_Control = userControl;// new CyADC_DelSigControl(inst);
     ADC_Control.Dock = DockStyle.Fill;
     ADC_Control.AutoScroll = true;
 }
        System.Windows.Forms.DialogResult ICyParamEditHook_v1.EditParams(ICyInstEdit_v1 edit, 
            ICyTerminalQuery_v1 termQuery,
            ICyExpressMgr_v1 mgr)
        {
            ICyTabbedParamEditor editor = edit.CreateTabbedParamEditor();
            m_control = new CyADC_DelSigControl(edit);
            m_editingControl = new CyADC_EditingControl(edit, m_control, BasicTabName);
            CyParamExprDelegate ExprDelegate = delegate(ICyParamEditor custEditor, CyCompDevParam param)
            {
                m_control.UpdateFormFromParams(edit);
            };

            editor.AddCustomPage(ConfigureTabName, m_editingControl, ExprDelegate, BasicTabName);
            editor.AddDefaultPage(BuiltinTabName, BuiltinTabName);
            editor.UseBigEditor = true;
            DialogResult result = editor.ShowDialog();

            // Place calculations here *****************************************************************************

            edit.CommitParamExprs();

            return result;
        }