只需要一些关于计算器C#的帮助

时间:2015-12-10 05:33:03

标签: c#

我正在制作一个计算器以获得一些C#的经验,因为我有一个文本框在彼此顶部,较低的一个叫做计算;我希望这个显示计算的总和。顶部的文本框称为结果,我显然希望显示结果;结果框工作正常。我希望下面的文本框(称为计算)显示它不会让我做的+符号,此刻我只能显示数字。我认为这是一个数据类型问题。有什么帮助/建议吗?谢谢! (我在转移到其他符号之前将其整理出来并最终将其放入开关盒:))

 public partial class Form1 : Form
 {
    public Form1()
    {
       InitializeComponent();
    }

    double num1 = 0;
    double num2 = 0;

    private void Clearbtn_Click(object sender, EventArgs e)
    {
        Calculation.Clear();
        Result.Clear();
    }

    private void Numericclick(object sender, EventArgs e)
    {
        Button button = (Button)sender;
        Calculation.Text = Calculation.Text + button.Text;
    }

    private void Plusbtn_Click(object sender, EventArgs e)
    {
        num1 = num1 + double.Parse(Calculation.Text);
        Result.Show();
    }

    private void Equalsbtn_Click(object sender, EventArgs e)
    {
        num2 = num1 + double.Parse(Calculation.Text);
        Result.Text = num2.ToString();
        num1 = 0;

    }
}

}

1 个答案:

答案 0 :(得分:1)

如果对字符串使用(+)运算符,则将它们连接在一起。

这一行Calculation.Text = Calculation.Text + button.Text;

在C#6中将是:

Calculation.Text = $"{Calculation.Text} + {button.Text}";

低于C#6:

Calculation.Text = string.Format("{0} + {1}", Calculation.Text, button.Text);

字符串连接文档:HERE

操作数+与字符串“+”之间的区别示例:

//+ operand concats string
var text = "abc";
var text2 = "def";

var result = text + text2;
//result -> "abcdef"

var result2 = text + "+" + text2;
//result -> "abc+def"