[英]How to sum all numbers in a Listbox using TextBox?
我想對ListBox
所有值進行計數和求和。 例如,我在我的下列值ListBox
: 4
, 6
, 1
, 7
。 我現在的價值是18
。 如果我用TextBox
添加2
,我需要20
,如果我添加5
我需要總共25
。
如果我使用下面的代碼嘗試它,它給了我一個完整的其他數字。
這是我的代碼:
private void AddButton_Click(object sender, EventArgs e)
{
decimal sum;
listBox2.Items.Add(TextBox1.Text);
TextBox1.Text = "";
for (int i = 0; i < listBox2.Items.Count; i++)
{
sum += Convert.ToDecimal(listBox2.Items[i].ToString());
}
Label1.Text = sum.ToString();
}
您錯過了初始化sum的默認值。 在將值添加到sum
變量之前分配sum = 0
private void AddButton_Click(object sender, EventArgs e)
{
decimal sum = 0; //Set sum = 0 by default
listBox2.Items.Add(TextBox1.Text);
TextBox1.Text = "";
for (int i = 0; i < listBox2.Items.Count; i++)
{
//To check value of sum after each iteration, you can print it on console
Console.WriteLine("Sum =" +sum);
sum += Convert.ToDecimal(listBox2.Items[i].ToString());
}
Label1.Text = sum.ToString();
}
很抱歉也許沒有回答,但奇怪的是你的編譯器沒有告訴你初始化總和。 第二個我測試了你的代碼,它按預期正常工作,這意味着如果問題不在sum變量中,那么你在其他地方為這個字段做了別的東西,所以你的代碼不能正常工作。
考慮到你對前一個人的評論,我會說同樣的。 在某些情況下(我知道這很有趣但是)你的計算機上可能有病毒。 核實。 一旦進入我的生活,我的數學實驗室工作失敗了,因為病毒中斷了我的程序所以它繪制了錯誤的圖表!生病我知道:D
private void button1_Click(object sender, EventArgs e)
{
var sum = 0;
var value = 0;
listBox1.Items.Add(textBox1.Text);
foreach (var item in listBox1.Items)
{
if (!int.TryParse(item.ToString(), out value))
continue;
sum = sum + value;
}
label1.Text = sum.ToString();
textBox1.Text = string.Empty;
}
使用未分配的局部變量'sum',sum必須在使用前分配!
decimal sum = 0;
休息一切都好
需要將sum設置為0,並且最好使用foreach而不是Dotloop。
private void AddButton_Click(object sender, EventArgs e) {
decimal sum = 0;
listBox2.Items.Add(TextBox1.Text);
TextBox1.Text = "";
foreach (string s in listBox2) {
sum += Convert.ToDecimal(s);
}
Label1.Text = sum.ToString();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.