Сумма gridview_rowdatabount - PullRequest
0 голосов
/ 12 июня 2018

Хорошо, у меня есть 4 столбца с именами фактических и 4 столбца с именами целевых, мне нужно суммировать все фактические столбцы и передать итоги метке ... Кто-нибудь может помочь?

Что у меня естьдо сих пор, но я знаю, что это неправильно ..

public void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {

            if (e.Row.RowType == DataControlRowType.DataRow) //checking the index of cells and changing the font colour
            {

                System.Data.DataRowView drv = (System.Data.DataRowView) e.Row.DataItem;
                DataTable dt = drv.Row.Table;

                for (int i = 0; i < e.Row.Cells.Count; i++)
                {
                    if (dt.Columns[i].ColumnName.Contains("Actual"))
                    {
                        e.Row.Cells[i].ForeColor = Color.Red;
                    }


                    dt.Columns.Add("Total", typeof(Double));

                    foreach (DataRow row in dt.Rows)
                    {
                        int sum = row.Table.Columns<DataColumn>().Sum(dc => (int)row[dc]);
                        row.SetField("Total", sum);
                        labeltotal.Text = sum.ToString();
                    }

                }

1 Ответ

0 голосов
/ 12 июня 2018

Вы можете просто сделать это так

Int32 total = 0; 
protected void GridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        total = total + Convert.ToInt32(e.Row.Cells[1].Text);
        //here you can give the column no that you want to total like e.Row.Cells[1] for column 1
        lblTotal.Text = total.ToString();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...