查找总计 从列表视图中的标签中单击复选框

本文关键字:标签 单击 复选框 视图 列表 查找 | 更新日期: 2023-09-27 18:35:56

我在listview中有一行,其中有包裹成本。我要做的就是单击哪个复选框,该行的包裹成本将被汇总并显示在listview外的文本框中。 我不知道该写什么 - 我只有这段代码,但我不知道如何计算它:

ArrayList em = new ArrayList();
foreach (GridViewRow row in GridView1.Rows)
{
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1");
    Label lblcost = (Label)row.FindControl("Label5");
    if (chkselect.Checked)
    {
        em.Add(lblcost.Text);
    }
}

这是我在用复选框进行邮件时所做的

查找总计 从列表视图中的标签中单击复选框

您需要

variable为单位对成本求和,并且可能不需要为此ArrayList。您可以将计算出的总成本分配给Text属性TextBox

int total = 0;
foreach (GridViewRow row in GridView1.Rows)
{
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1");
    Label lblcost = (Label)row.FindControl("Label5");
    if (chkselect.Checked)
    {         
        total += double.Parse(lblcost.Text);
    }
}
textBoxCost.Text = total.ToString();

您必须将label.Text转换为十进制。

decimal total = 0;
decimal value = 0;
foreach (GridViewRow row in GridView1.Rows)
{
    CheckBox chkselect = (CheckBox)row.FindControl("CheckBox1");
    Label lblcost = (Label)row.FindControl("Label5");
    if (chkselect.Checked)
    {
        if (decimal.TryParse(lblcost.Text, out value))
        {
            total += value;
        }
    }
}

我在这里使用了更安全的原因,以防输入不是数字。