华氏度到摄氏度的转换未显示在Button_Click上

时间:2019-02-03 21:40:50

标签: c# winforms

我必须使用WinForms写一个简单的华氏度到摄氏度的转换器,但是单击按钮后,转换后的(摄氏度)温度不会按预期显示。它始终显示摄氏温度为0。该程序具有一个用于输入华氏温度的简单文本框,一个转换按钮和一个用于输出转换后温度的标签。

我已经尝试对摄氏温度值进行硬编码,并尝试使用几种不同的华氏温度值,包括212华氏度这样的明显值。

namespace FtoCConverter
{
    public partial class TempConverter : Form
    {
        public decimal fahrenheit;
        public decimal celsius = 50;
        public TempConverter()
        {
            InitializeComponent();
        }

        private void convertButton_Click(object sender, EventArgs e)
        {
            fahrenheit = decimal.Parse(fTempEntry.Text);
            celsius = (5 / 9) * (fahrenheit - 32);

            CelsiusLabel.Text = string.Format($"Your temperature is {0:0.00} degrees Celsius.", celsius);
            fTempEntry.Focus();
        }
    }
}

正确的温度将以摄氏度显示。

1 个答案:

答案 0 :(得分:0)

在使用字符串插值时,请尝试

celsius = (5m / 9) * (fahrenheit - 32);
CelsiusLabel.Text = $"Your temperature is {celsius:0.00} degrees Celsius.";