Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何将标签中的数字乘以某个数字,并将结果输出到不同的标签C#_C#_Label - Fatal编程技术网

如何将标签中的数字乘以某个数字,并将结果输出到不同的标签C#

如何将标签中的数字乘以某个数字,并将结果输出到不同的标签C#,c#,label,C#,Label,我正在努力找出正确的方法,我在谷歌上做了一些搜索,我已经做到了这一点,当我运行应用程序时,这段代码确实会使它崩溃 简而言之,我根据用户选择(按周计算)汇总了一系列数字,并希望以每月格式输出最终结果(因此*我的总数乘以4) 这是我正在运行的这一部分的代码,如有任何帮助,将不胜感激。 谢谢 您应该首先检查该值是否可解析,因此在检查中移动它将是一个更好的选择 private void CalcButton() { double a, b, c; double d

我正在努力找出正确的方法,我在谷歌上做了一些搜索,我已经做到了这一点,当我运行应用程序时,这段代码确实会使它崩溃

简而言之,我根据用户选择(按周计算)汇总了一系列数字,并希望以每月格式输出最终结果(因此*我的总数乘以4)

这是我正在运行的这一部分的代码,如有任何帮助,将不胜感激。 谢谢


您应该首先检查该值是否可解析,因此在检查中移动它将是一个更好的选择

private void CalcButton()
    {
        double a, b, c;
        double d;

        if (double.TryParse(label41.Text, out a) && 
            double.TryParse(label45.Text, out b) &&
            double.TryParse(label17.Text, out c))
        {
            label43.Text = (a + b + c).ToString("C");
        }

        if (radioButton4.Checked == true && 
            double.TryParse(label43.Text, out d))
        {
            label42.Text = (d * 4).ToString();
        }
    }

首先,将
d
初始化为一个值。
接下来,如果您的一个或多个初始化测试失败,
label43.Text
未设置,您对该标签的解析将失败。
我建议,在第一个测试中,将d的值设置为三个值的总和,然后将
level43.text
设置为
d.ToString(“C”)
然后,您将不需要解析
label43.Text

最后,使用4来确定每月金额并不准确,因为每12个月有52周。更接近的值为
52/12=4.3333…

像这样:

private void CalcButton()
    {
        double a, b, c;
        double d = 0.0;

        if (double.TryParse(label41.Text, out a) && 
                double.TryParse(label45.Text, out b) && 
                double.TryParse(label17.Text, out c))
        {
            d = a + b + c;
            label43.Text = d.ToString("C");
        }
        if (radioButton4.Checked == true)
        {
            label42.Text = (d * 52 / 12).ToString();
        }
    }

你好,非常感谢你的回复。我按照你的指示做了,这次没有崩溃(进度!),但是当我按下计算按钮时,标签文本没有改变……嘿,杰夫,非常感谢你的回复。成功了!对每月的计算和一些真正有价值的见解有很好的理解。非常感谢,圣诞快乐!
private void CalcButton()
    {
        double a, b, c;
        double d = 0.0;

        if (double.TryParse(label41.Text, out a) && 
                double.TryParse(label45.Text, out b) && 
                double.TryParse(label17.Text, out c))
        {
            d = a + b + c;
            label43.Text = d.ToString("C");
        }
        if (radioButton4.Checked == true)
        {
            label42.Text = (d * 52 / 12).ToString();
        }
    }