C# 如何将计算结果输入C语言中的MessageBox#

C# 如何将计算结果输入C语言中的MessageBox#,c#,forms,C#,Forms,我试图将程序结束时的“更改”计算到MessageBox中。输入到文本框中的美元金额需要从中减去总额,但我似乎看不出我做错了什么。谁能帮我完成这个 namespace HardwareStore { public partial class frmMain : Form { public frmMain() { InitializeComponent(); ProductBox.Items.Add(n

我试图将程序结束时的“更改”计算到MessageBox中。输入到文本框中的美元金额需要从中减去总额,但我似乎看不出我做错了什么。谁能帮我完成这个

namespace HardwareStore
{
    public partial class frmMain : Form
    {
        public frmMain()
        {
            InitializeComponent();

            ProductBox.Items.Add(new Hardware() { ItemNo = 1010, ProdName = "Hammer         ", Price = (decimal)14.99d });
            ProductBox.Items.Add(new Hardware() { ItemNo = 1056, ProdName = "Bag of Nails   ", Price = (decimal)19.99d });
            ProductBox.Items.Add(new Hardware() { ItemNo = 2001, ProdName = "Saw               ", Price = (decimal)29.99d });
            ProductBox.Items.Add(new Hardware() { ItemNo = 2005, ProdName = "Chainsaw       ", Price = (decimal)69.99d });
            ProductBox.Items.Add(new Hardware() { ItemNo = 3090, ProdName = "Ladder          ", Price = (decimal)109.99d });
        }

        private void frmMain_Load(object sender, EventArgs e)
        {

        }

        private void btnAddItem_Click(object sender, EventArgs e)
        {
            try
            {
                for (int i = 0; i < int.Parse(txtQuantity.Text); i++)
                    ReceiptBox.Items.Add(ProductBox.Items[ProductBox.SelectedIndex]);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void ReceiptBox_SelectedIndexChanged(object sender, EventArgs e)
        {

        }

        private void btnCalculate_Click(object sender, EventArgs e)
        {

            decimal subTotal = ReceiptBox.Items.Cast<Hardware>().Sum(item => item.Price);
            decimal tax = Math.Round((subTotal * .075M), 2);
            decimal total = subTotal + tax;

            lblSub.Text = "$" + subTotal.ToString();
            lblTax.Text = "$" + tax.ToString();
            lblTotal.Text = "$" + total.ToString();

            lblSub.Visible = true;
            lblTax.Visible = true;
            lblTotal.Visible = true;
        }

        private void btnChange_Click(object sender, EventArgs e)
        {

            MessageBox.Show("Change Due: $  ");

        }
    }
}
名称空间硬件存储
{
公共部分类名称:表单
{
公共财政收入()
{
初始化组件();
ProductBox.Items.Add(新硬件(){ItemNo=1010,ProdName=“Hammer”,Price=(十进制)14.99d});
ProductBox.Items.Add(新硬件(){ItemNo=1056,ProdName=“钉袋”,价格=(十进制)19.99d});
ProductBox.Items.Add(新硬件(){ItemNo=2001,ProdName=“Saw”,Price=(十进制)29.99d});
ProductBox.Items.Add(新硬件(){ItemNo=2005,ProdName=“Chainsaw”,Price=(decimal)69.99d});
ProductBox.Items.Add(新硬件(){ItemNo=3090,ProdName=“Ladder”,Price=(十进制)109.99d});
}
私有void frmMain_加载(对象发送方,事件参数e)
{
}
私有void btnAddItem_单击(对象发送者,事件参数e)
{
尝试
{
for(int i=0;iitem.Price);
十进制税=数学四舍五入((小计*.075M),2);
小数合计=小计+税金;
lblSub.Text=“$”+小计.ToString();
lblTax.Text=“$”+tax.ToString();
lblTotal.Text=“$”+total.ToString();
lblSub.Visible=true;
lblTax.Visible=true;
lblTotal.Visible=true;
}
私有void b更改\u单击(对象发送者,事件参数e)
{
MessageBox.Show(“到期变更:$”;
}
}
}

我想我抓了两次

decimal total = 0; //declare the total as global variable
private void btnCalculate_Click(object sender, EventArgs e)
    {

        decimal subTotal = ReceiptBox.Items.Cast<Hardware>().Sum(item => item.Price);
        decimal tax = Math.Round((subTotal * .075M), 2);
        total = subTotal + tax;

        lblSub.Text = "$" + subTotal.ToString();
        lblTax.Text = "$" + tax.ToString();
        lblTotal.Text = "$" + total.ToString();

        lblSub.Visible = true;
        lblTax.Visible = true;
        lblTotal.Visible = true;
    }

 private void btnChange_Click(object sender, EventArgs e)
 {
     decimal customerPay = 100;

     if (total != 0){
             decimal changeDue = customerPay - total;

             txtDollar.Txt = "$ " + changeDue.toString();

             MessageBox.Show("Change Due: " + txtDollar.Txt);
     }


 }
decimal总数=0//将总数声明为全局变量
私有void btnCalculate\u单击(对象发送者,事件参数e)
{
小数小计=ReceiptBox.Items.Cast().Sum(item=>item.Price);
十进制税=数学四舍五入((小计*.075M),2);
合计=小计+税金;
lblSub.Text=“$”+小计.ToString();
lblTax.Text=“$”+tax.ToString();
lblTotal.Text=“$”+total.ToString();
lblSub.Visible=true;
lblTax.Visible=true;
lblTotal.Visible=true;
}
私有void b更改\u单击(对象发送者,事件参数e)
{
十进制客户支付=100;
如果(总计!=0){
decimal changeDue=客户付款-总计;
txtdaular.Txt=“$”+changeDue.toString();
MessageBox.Show(“到期变更:+txtdaular.Txt”);
}
}

怎么了?你没有说过你甚至在互联网上搜索过如何格式化字符串,或者学习过一些关于不同变量作用域的知识吗?是的,我有。我是一个初学者,已经做了很多的搜索。谢谢你的帮助。不,我只想显示总额中的应付变动。我需要计算总额减去输入名为txtdollars的文本框中的内容。然后计算应付变动,并将其输入名为txtdollars的文本框中,然后执行与上述相同的操作。你能告诉我你的意思和我把它放在哪里吗?检查更新的答案以查看是什么这是你想要的吗?