首页 > 解决方案 > 无法将 baseprice 输出到小计

问题描述

我试图创建一个计算器,将基价加起来,添加任何单选按钮/复选标记,加上税,并将结果放入小计中。为什么我的基本价格文本框不能出现在小计文本框中?我尝试了几种方法,但它们似乎不起作用。有什么建议吗?这是我的代码:

 public partial class Form1 : Form

{
    public Form1()
    {
        InitializeComponent();   
    }
            private void txttradein_TextChanged(object sender, EventArgs e)
    {
        lblTradein.Text = txtTradeIn.Text;
    }
    private void btnCalculate_Click(object sender, EventArgs e)
    {
        double BasePrice = double.Parse(txtBasePrice.Text);
        try
        {
          if (BasePrice < 0)
            {
                MessageBox.Show("Error");
                txtBasePrice.Focus();
                txtBasePrice.SelectAll();
            }
        }
        catch (FormatException)
        {
            txtBasePrice.SelectAll();
            MessageBox.Show("Numbers Only");

        }
        try
        {
            double TradeIn= double.Parse(txtTradeIn.Text);
            if(TradeIn < 0)
            {
                MessageBox.Show("Error");
                txtTradeIn.Focus();
                txtTradeIn.SelectAll();
            }
        }
        catch (FormatException)
        {
            txtTradeIn.SelectAll();
            MessageBox.Show("Numbers Only");

        }
        double stereoPrice = 0, leatherPrice = 0, navPrice = 0;
        if (chkStereo.Checked) {
            stereoPrice = 425.76;
        } if (chkLeather.Checked){ 
                leatherPrice = 987.41;
        } if (chkComputer.Checked){ 
                navPrice = 1741.23;
        }

        double exteriorFinish = 0;
        if(radPearlized.Checked)
        {
            exteriorFinish = 345.72;

        }
        else if (radCustom.Checked)
        {
            exteriorFinish = 599.99;
        }
        else
        {
            exteriorFinish = 0;
        }

        double subTotal = stereoPrice + leatherPrice + navPrice +   exteriorFinish;

        double txtRate = 0.08, tax = 0;
        tax = subTotal * txtRate;
        txtTax.Text = tax.ToString();
        txtSubtotal.Text = subTotal.ToString();
    }
  }

}

标签: c#winformscalculator

解决方案


请在 try 块之外声明基本价格变量。该变量在 try 块内声明,因此无法在外部访问。

此外,您甚至没有在计算中使用基本价格变量。见下文 -

    double subTotal = stereoPrice + leatherPrice + navPrice +   exteriorFinish;

推荐阅读