Como criar um total no rodapé do controle GridView do ASP.NET?

Vc sabia que é possível criar um totalizador de colunas no rodapé do controle GridView do ASP.NET, mesmo que vc tenha paginação? Tenha em mente estas colunas no GridView: ID | Produto | Preco | Qtde

O que vc tem que fazer é criar o seguinte código no evento DataBound do GridView para somar a coluna Qtde e exibir o total no rodapé:

protected void GridView1_DataBound(object sender, EventArgs e)
{
    decimal Total = 0;
    foreach (GridViewRow row in GridView1.Rows)
    {
        // converte o preco e a qtde para multiplicar e somar no total
        decimal preco = decimal.Parse(row.Cells[2].Text);
        int qtde = Int32.Parse(row.Cells[3].Text);
        Total += preco * qtde;
    }
    GridViewRow footer = GridView1.FooterRow;
    footer.Cells[0].ColumnSpan = 3;
    footer.Cells[0].HorizontalAlign = HorizontalAlign.Center;
    footer.Cells.RemoveAt(2);
    footer.Cells.RemoveAt(1);
    footer.Cells[0].Text = string.Format("Stock value: {0:n2}", myStock);
}

Veja este exemplo ao vivo em http://www.renatohaddad.com/GridView/GridTotalRodape.aspx

Mais exemplos do GridView, consute o CD Um Mergulho no controle GridView em http://www.renatohaddad.com/videos.aspx

Bons estudos!!

2 Comments

Comments have been disabled for this content.