我最近陷入了我的项目,因为我需要满足要求,需要在单个文本框中执行添加。 我查看了最相似的帖子,并对其进行了很好的了解,Addition using a single TextBox。
而不是int,我需要像使用int一样使用double。
private int i = 0;
private int[] a = new int[2];
private void button1_Click(object sender, EventArgs e)
{
int b;
if(Int32.TryParse(textBox1.Text, out b))
{
a[i] = b;
i++;
textBox1.Text = "";
}
else
{
MessageBox.Show(@"Incorrect number");
}
}
private void resultbutton2_Click(object sender, EventArgs e)
{
int sum = a[0] + a[1];
MessageBox.Show("Sum: " + sum);
}
}
相反,我应该用什么代码为double创建类似的东西?
答案 0 :(得分:0)
double b = 0;
try{
b = Convert.ToDouble(textBox1.Text);
}
catch(e){
// Error Handling
}
文档:https://docs.microsoft.com/en-us/previous-versions/windows/apps/zh1hkw6k(v=vs.105)
答案 1 :(得分:0)
您可以尝试使用以下内容:
Double.Parse("1.2");
这里的一些例子: https://msdn.microsoft.com/en-us/library/fd84bdyt(v=vs.110).aspx
答案 2 :(得分:0)
如果您想保留代码,请执行以下操作:
private int i = 0;
private double[] a = new double[2];
private void button1_Click(object sender, EventArgs e)
{
double b;
if (Double.TryParse(textBox1.Text, out b))
{
a[i] = b;
i++;
textBox1.Text = "";
}
else
{
MessageBox.Show(@"Incorrect number");
}
}
private void resultbutton2_Click(object sender, EventArgs e)
{
double sum = a[0] + a[1];
MessageBox.Show("Sum: " + sum);
}
但你可以尝试这个来增加超过2个双打:
private double result = 0.0;
private void button1_Click(object sender, EventArgs e)
{
double b;
if (Double.TryParse(textBox1.Text, out b))
{
result += b,
textBox1.Text = "";
}
else
{
MessageBox.Show(@"Incorrect number");
}
}
private void resultbutton2_Click(object sender, EventArgs e)
{
MessageBox.Show("Sum: " + result);
}