2016-04-16 137 views
0

我想要計算列表框中列的總數。我的代碼如下:如何計算列表框的總和

變量

double VanTot = Menu.VanillaQ * 1.00; 
     double LCTot = Menu.LCQ * 1.50; 
     double ChocTot = Menu.ChocQ * 1.50; 

列表框

if (Menu.VanillaQ > 0) 
     { 

      listBox2.Items.Add("£" + VanTot.ToString("N2")); 

     } 

     if (Menu.LCQ > 0) 
     { 

      listBox2.Items.Add("£" + LCTot.ToString("N2")); 

     } 

     if (Menu.ChocQ > 0) 
     { 
      listBox2.Items.Add("£" + ChocTot.ToString("N2")); 
     } 

我如何通過將每個 '托特' 計算總在這個文本框中顯示出來:

private void Totaltxt_TextChanged(object sender, TextChangedEventArgs e) 
    { 


    } 

回答

0

當相應的文本框的文本以任何方式改變時,Totaltxt_TextChanged方法將被調用,所以我不知道如何適用於總和的加總。只要你想要計算和顯示總數,你可以插入下面的行。我假設「Totaltxt」是您的文本框的名稱。

Totaltxt.Text = (VanTot + LCTot + ChocTot).ToString();

1

如果你想獲得的所有的ListBoxSum他們Items,你可以使用LINQSum來幫助你。但是,你需要一些中間步驟,你以前有:

  1. object收集投下你ListBox.Itemsstring
  2. 每個元素轉換爲數字數據類型一樣,比方說,decimal
  3. 求和結果

你可以這樣做LINQ這樣的單線程:

decimal sum = listBox1.Items 
       .Cast<string>() //read (1) 
       .Select(x => Convert.ToDecimal(x)) //read (2) 
       .Sum(); //read (3)