C# 如何从一个文本框中输入多个数字并将它们相加?
我知道我的问题可能很奇怪,但我想知道。我正在建立一个做清单的程序。当单击add按钮时,用户从他们的库存列表中为不同的文本框中的几个项目输入数字,程序存储来自文本框的每个输入。然后,当用户从列表中输入数字时。他们点击一个按钮,它生成了一个excel文件,其中包含所有文本框中的数字。到目前为止,我已经完成了最后的按钮事件和输入部分,但是我很难从一个文本框中获取输入来存储每个文本框并将它们全部相加。我试过不同的方法,但似乎没法做到 我的代码:C# 如何从一个文本框中输入多个数字并将它们相加?,c#,visual-studio-2013,C#,Visual Studio 2013,我知道我的问题可能很奇怪,但我想知道。我正在建立一个做清单的程序。当单击add按钮时,用户从他们的库存列表中为不同的文本框中的几个项目输入数字,程序存储来自文本框的每个输入。然后,当用户从列表中输入数字时。他们点击一个按钮,它生成了一个excel文件,其中包含所有文本框中的数字。到目前为止,我已经完成了最后的按钮事件和输入部分,但是我很难从一个文本框中获取输入来存储每个文本框并将它们全部相加。我试过不同的方法,但似乎没法做到 我的代码: int ALPTotal = 0; int
int ALPTotal = 0;
int memory = 0;
private void btnSubmit_Click(object sender, EventArgs e)
{
if (txtALP.Text == "")
{
txtALP.Text = "0";
}
if (txtBookP.Text == "")
{
txtBookP.Text = "0";
}
string ALP2 = txtALP.Text;
int ALP = Convert.ToInt32(ALP2);
string BookP2 = txtBookP.Text;
int BookP = Convert.ToInt32(BookP2);
if (ALP >= 150)
{
MessageBox.Show("Please enter 150 or less", "Item Entered", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else if (BookP >= 150)
{
MessageBox.Show("Please enter 150 or less", "Item Entered", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
}
if (memory == 0)
{
memory = ALP;
}
else if (memory == ALP)
{
ALPTotal = memory + ALP + ALP;
MessageBox.Show("Information Added", "Added to List", MessageBoxButtons.OK, MessageBoxIcon.Information);
txtALP.Clear();
txtBookP.Clear();
}
}
private void btnClearCells_Click(object sender, EventArgs e)
{
Excel.Application App;
Excel.Workbook workbook;
Excel.Worksheet worksheet;
App = new Excel.Application();
workbook = App.Workbooks.Add();
worksheet = (Excel.Worksheet)workbook.Worksheets.get_Item(1);
worksheet.Cells[3, 2] = ALPTotal;
worksheet.Cells[4, 2] = txtBookP.Text;
}
}
此外,该程序应该只能从每个文本框接收多达100个输入。因此,用户不能从程序中的每个文本框中添加超过100个输入数字
所以,在尝试了许多不同的方式和方法之后,我想知道:我所要求的是可能的还是不可能的
附言——如果需要更多的信息才能得出答案。请让我知道,我会发布更多信息。谢谢
更新我忘记了前面提到的btnSubmit_Click是add按钮方法,btnClearCells_Click是Submit/Total按钮方法。另外,我在评论中添加了一个我想做的例子。如果有人不知道我在问什么
最终更新我的案例现已结束。我已经解决了我的问题,答案如下所示。感谢所有帮助过我的人 我找到了答案。我在读Stackoverflow.com上的一个问题。我所要做的就是添加一个:
memory = ALP;
ALPTotal += memory;
一旦我将此更改添加到我的代码中并对其进行了测试。我的程序做了我想要的。
同样由于找到了我的答案,我不再需要100个用户的输入限制,因为一开始我认为我需要它,因为我认为我必须这样做
ALPTotal = memory + ALP + ALP + // ALP (97 more times)
得到我想要的结果,但我没有。所以,我要感谢所有帮助我解决问题的人。非常感谢。为什么要标记[c++],而它不是。不管怎样,100个输入数字意味着什么?如果程序最多只包含150个项目,则将长度限制为3?这是:ALPTotal=memory+ALP+ALP;在您提供的上下文中没有任何意义。我尝试过使用数组,但不断出错,我尝试过使用for each循环并出错。我甚至做了一个while循环并得到了错误。我是否遗漏了一些经常出错的内容?cfrozedath 150是可以在文本框中输入的最大数字。100是我希望用户能够在文本框中输入数字的最大数字。例如,你有100份订单,你使用这个程序。当您输入100个订单中的所有数字时。那么这个程序就不能再继续了。至于ALP总量=内存+ALP+ALP;这是我试图让一个文本框由用户从一个文本框中添加多达100个不同输入的方法之一。如果您有两个按钮“添加”和“提交”,那么添加方法的代码在哪里?