日期:2014-05-18  浏览次数:20982 次

如何将LISTBOX中的部分值求和?
如图:


我要把这个ListBox(l_sd_list)的金额部分。按超市水单和百货水单两类分别求和。目前的代码只能将整体消费金额求和。分别赋值给CS_SUM和BH_SUM
请问应该如何写?

现在加入一条水单记录是这样的:
l_sd_list.additem("收银号" + sy.Text + "交易号" + jy.Text + "金额" + je.Text + ComBOX.Text) ;


C# code
 
//水单金额算法
            if (c_sd_fee.Checked == true)\\如果使用水单抵值 
            {
                if (l_sd_list.Items.Count == 0)\\如果listbox中值为空
                {
                    MessageBox.Show("请输入水单信息", "提示", );
                    return;
                }
                else
                {
                    foreach (string sd_items in l_sd_list.Items)
                    {
 sd_all_money += Convert.ToInt32(sd_items.Substring(sd_items.IndexOf("消费金额:") + 5))
//将所有消费金额后的值累加,求和
                    }
                 }
             }



------解决方案--------------------
笨办法:
//水单金额算法
if (c_sd_fee.Checked == true)\\如果使用水单抵值 
{
if (l_sd_list.Items.Count == 0)\\如果listbox中值为空
{
MessageBox.Show("请输入水单信息", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
return;
}
else
{
foreach (string sd_items in l_sd_list.Items)
{


if(sd_items.Contains("超市水单"))
{
CS_SUM = XXX
}
if(sd_items.Contains("百货水单"))
{
BH_SUM = XXX
}
sd_all_money += Convert.ToInt32(sd_items.Substring(sd_items.IndexOf("消费金额:") + 5))//将所有消费金额后的值累加,求和




}
}
}

------解决方案--------------------


在你 每次 加入的时候在 后台 增减 数据 
懂?
而不是 让前台先显示 然后再 求和 

思路跟上了没有?

------解决方案--------------------
干嘛不用DATAGRID?