将选定复选框的值存储到数组

时间:2016-08-29 18:17:31

标签: c# arrays for-loop foreach dataset

我有一个foreach,如果选中行的复选框,它应该做一些计算,然后将结果值存储在某个东西中,我试图存储在一个数组中。最后我需要有,例如,在数组中使用他的值选择的4行,之后我需要将这些值放在会话中,并在其他页面中恢复(确认页面)。我试过这个。但我不能数字一种方法来存储数组中的选择行。如果有人知道更好的方法,我不需要成为数组。

string[] valoresSelecionados;
foreach (GridViewRow grdCount in grdSimulacao.Rows)
{
    if (((CheckBox)grdCount.FindControl("chkSeleciona")).Checked)
    {
        if (double.Parse(grdCount.Cells[5].Text) >= 0)
            vlNotas += double.Parse(grdCount.Cells[5].Text);
        else
            vlDebito += double.Parse(grdCount.Cells[5].Text);

        if (!string.IsNullOrEmpty(grdCount.Cells[8].Text) && grdCount.Cells[8].Text != " ")
            vlEncargos += double.Parse(grdCount.Cells[8].Text);

        _simulacao.Notas.Rows.Add(grdCount.Cells[1].Text);
        if (Culture== "English (United States)")
        {
           //DateTime data =DateTime.Parse(grdCount.Cells[2].Text);
           //var dataInicial = data.ToString("mm-DD-yyyy");

            _simulacao.Notas.Rows[u]["DTEMISSAO"] = grdCount.Cells[2].Text;
            _simulacao.Notas.Rows[u]["DTVENCIMENTO"] = grdCount.Cells[3].Text;
        }
        else
        {
            _simulacao.Notas.Rows[u]["DTEMISSAO"] = grdCount.Cells[2].Text;
            _simulacao.Notas.Rows[u]["DTVENCIMENTO"] = grdCount.Cells[3].Text;
        }

        _simulacao.Notas.Rows[u]["PRAZOPGTO"] = "5";
        _simulacao.Notas.Rows[u]["VALTOTAL"] = grdCount.Cells[5].Text;
        _simulacao.Notas.Rows[u]["DOCCOMPRAS"] = grdCount.Cells[6].Text;

        if (DateTime.Parse(grdCount.Cells[3].Text) < DateTime.Parse(txtDtCredito.Text))
            dtok = true;




        DateTime antigaData = DateTime.Parse(grdCount.Cells[3].Text);
        DateTime novaData = DateTime.Parse(txtDtCredito.Text);
        DateTime dataAtual = DateTime.Today;
        int diaAtual = dataAtual.DayOfYear;
        int diaNovo = novaData.DayOfYear;
        int diaAntigo = antigaData.DayOfYear;
        int anoAtual = dataAtual.Year;
        int anoNovo = novaData.Year;
        if (diaAntigo <= diaNovo)
        {
            dataErro++;

        }

        if (diaNovo == diaAtual || diaNovo == diaAtual + 1 || diaNovo == diaAtual + 2 ||
            diaNovo == diaAtual + 3 || diaNovo < diaAtual || anoAtual < anoNovo)
        {
            error++;

        }
        else
        {
            TimeSpan ts = antigaData - novaData;
            if ((double.Parse(grdCount.Cells[5].Text)) < 0)
            {

            }
            else
            {
                _simulacao.Notas.Rows[u]["DIASANTEC"] = ts.Days;

            }

        }




        if (grdCount.Cells[7].Text != "&nbsp;")
            _simulacao.Notas.Rows[u]["DIASANTEC"] = "10";
        else
            _simulacao.Notas.Rows[u]["DIASANTEC"] = "0";

        if (!string.IsNullOrEmpty(grdCount.Cells[8].Text) && grdCount.Cells[8].Text != "&nbsp;")
        {
            _simulacao.Notas.Rows[u]["VLFINAL"] = double.Parse(grdCount.Cells[5].Text) - double.Parse(grdCount.Cells[8].Text);
            _simulacao.Notas.Rows[u]["VLENCARGOS"] = grdCount.Cells[8].Text;
        }
        else
        {
            _simulacao.Notas.Rows[u]["VLFINAL"] = double.Parse(grdCount.Cells[5].Text);
            _simulacao.Notas.Rows[u]["VLENCARGOS"] = "0,00";
        }
        valoresSelecionados[] = _simulacao.Notas.Rows.Add[u];
        u++;
    }
}

第一张图片显示第一个带有所有值的网格。我选择4例如,在计算方法之后,我只需要在模型中显示4个选择(第二张图片),在图片二的第一个网格下将使用之前选定的值放置新网格。

enter image description here

enter image description here

0 个答案:

没有答案