新 C# 程序员 - 将两个 numericUpDown 值相加?

发布于 2024-07-10 17:05:42 字数 525 浏览 10 评论 0原文

我对 C# 编程相当陌生。

我正在制作一个有趣的程序,将两个数字相加,然后在消息框中显示总和。 我的表单上有两个 numericUpDowns 和一个按钮。 当按下按钮时,我希望它显示一个带有答案的消息框。

问题是,我不确定如何将 numericUpDowns 中的 twp 值添加在一起。

到目前为止,我的按钮事件处理程序中有这个:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(this.numericUpDown1.Value + this.numericUpDown2.Value);
    }

但显然,它不起作用。 它给了我 2 个编译器错误: 1. 'System.Windows.Forms.MessageBox.Show(string) 的最佳重载方法匹配有一些无效参数 2. 参数“1”:无法将十进制转换为“字符串”

谢谢!

I'm fairly new to C# programming.

I am making a program for fun that adds two numbers together, than displays the sum in a message box. I have two numericUpDowns and a button on my form. When the button is pushed I want it to display a message box with the answer.

The problem is, I am unsure how to add the twp values from the numericUpDowns together.

So far, I have this in my button event handler:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(this.numericUpDown1.Value + this.numericUpDown2.Value);
    }

But obviously, it does not work. It gives me 2 compiler errors:
1. The best overloaded method match for 'System.Windows.Forms.MessageBox.Show(string) has some invalid arguments
2. Argument '1': cannot convert decimal to 'string'

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

2024-07-17 17:05:43

这有效。

    decimal total = this.numericUpDown1.Value + this.numericUpDown2.Value;
    MessageBox.Show(total.ToString());

MessageBox.Show 需要一个字符串作为参数(这是第一条错误消息)。

This works.

    decimal total = this.numericUpDown1.Value + this.numericUpDown2.Value;
    MessageBox.Show(total.ToString());

MessageBox.Show expects a string as a parameter (that's the first error message).

久光 2024-07-17 17:05:43

试试这个:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());
    }

它从 numericUpDown 组件中获取值并将它们相加以获得 Decimal 类型的对象。 然后将其转换为 MessageBox 所采用的字符串。

Try this:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());
    }

It takes the values from the numericUpDown components and adds them to get an object of the type Decimal. This is then converted to a String, which MessageBox takes.

ゞ花落谁相伴 2024-07-17 17:05:43

现在这很容易了。 NumericUpDown.Value 有一个类型十进制。 Messagebox.Show() 需要一个字符串。 您所需要做的就是

MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());

将加法结果转换为字符串。

Now that's easy. NumericUpDown.Value has a type of Decimal. Messagebox.Show() expects a String. All you need to do is

MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());

to convert the result of the addition to a string.

无所谓啦 2024-07-17 17:05:42

this.numericUpDown1.Value + this.numericUpDown2.Value 实际上正确地评估了一个数字,所以你实际上非常接近。 问题是 MessageBox.Show() 函数需要一个字符串作为参数,而您给它一个数字。

要将结果转换为字符串,请添加 .ToString() 。 例如:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());
    }

作为参考,如果您想要进行更高级的格式化,您需要使用 String.Format() 而不是 ToString()。 有关如何使用 String 的详细信息,请参阅此页面 .Format()

this.numericUpDown1.Value + this.numericUpDown2.Value is actually evaluating properly to a number, so you're actually very close. The problem is that the MessageBox.Show() function, needs a string as an argument, and you're giving it a number.

To convert the result to a string, add .ToString() to it. Like:

private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show((this.numericUpDown1.Value + this.numericUpDown2.Value).ToString());
    }

For reference, if you want to do more advanced formatting, you'd want to use String.Format() instead of ToString(). See this page for more info on how to use String.Format().

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文