private void OnCurWaChanged()
        {
            curExprList = new List <CExpression>();

            string errmsg;

            foreach (WeightFormula wf in curWa.FormulaList)
            {
                CExpression expr = CExpression.Parse(wf.Formula, out errmsg);
                if (expr == null)
                {
                    string outmsg = "公式\"" + wf.Formula + "\"错误:" + errmsg;
                    XLog.Write(outmsg);
                    MessageBox.Show(outmsg);
                    return;
                }
                curExprList.Add(expr);
            }

            curWaParas = curWa.GetParaList();

            dataGridViewParaInput.Rows.Clear();

            foreach (WeightParameter wp in curWaParas)
            {
                dataGridViewParaInput.Rows.Add(new object[] { wp.ParaName, wp.ParaValue, wp.ParaUnit, WeightParameter.ParaTypeList[wp.ParaType], wp.ParaRemark });
            }

            btnCompute.Enabled = true;
            flowLayoutPanelParaImport.Enabled = true;
            flowLayoutPanelParaExport.Enabled = true;
        }