GridView RowDataBound Metoduyla Sütun Toplama

Merhaba arkadaşlar, bu makalemizde GridView da RowDataBound kısmına yazacağımız kod ile sütun toplama işlemini gerçekleştireceğiz. GridView nesnesinin ShowFooter ve AllowPaging özelliğini True yapıyoruz. Bu konu ile ilgili farklı metod kullanarak gerçekleştirdiğimiz sütun toplama işlemini anlatan GridView Sütun Toplama makalemize buradan ulaşabilirsiniz. Aspx kodlarında GridView nesnenize OnRowDataBound="GridView1_RowDataBound" u ekleyiniz.




Şekil 1

aspx.cs

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

}

decimal toplamFiyat = 0;

int toplamStok = 0;

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowType == DataControlRowType.DataRow)

{

// UnitPrice ve UnitsInStock değişkenm değerlerini ekliyoruz.

toplamFiyat += Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "UnitPrice"));

toplamStok += Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, "UnitsInStock"));

}

else if (e.Row.RowType == DataControlRowType.Footer)

{

e.Row.Cells[1].Text = "Tutar:";

// Footer da değerlerin gösterimini sağlıyoruz.

e.Row.Cells[2].Text = toplamFiyat.ToString("c");

e.Row.Cells[3].Text = "Stok:" + toplamStok.ToString("d");

e.Row.Cells[1].HorizontalAlign = e.Row.Cells[2].HorizontalAlign = HorizontalAlign.Right;

e.Row.Font.Bold = true;

}

}

}

aspx kod

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<title>title>

head>

<body>

<form id="form1" runat="server">

<div>

<asp:GridView ID="GridView1" runat="server"

OnRowDataBound="GridView1_RowDataBound" AllowPaging="True"

AutoGenerateColumns="False" CellPadding="4" DataKeyNames="ProductID"

DataSourceID="SqlDataSource1" ForeColor="#333333" GridLines="None"

ShowFooter="True" >

<AlternatingRowStyle BackColor="White" ForeColor="#284775" />

<Columns>

<asp:BoundField DataField="ProductID" HeaderText="ProductID"

InsertVisible="False" ReadOnly="True" SortExpression="ProductID" />

<asp:BoundField DataField="ProductName" HeaderText="ProductName"

SortExpression="ProductName" />

<asp:BoundField DataField="UnitPrice" HeaderText="UnitPrice"

SortExpression="UnitPrice" />

<asp:BoundField DataField="UnitsInStock" HeaderText="UnitsInStock"

SortExpression="UnitsInStock" />

Columns>

<EditRowStyle BackColor="#999999" />

<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />

<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />

<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />

<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />

<SortedAscendingCellStyle BackColor="#E9E7E2" />

<SortedAscendingHeaderStyle BackColor="#506C8C" />

<SortedDescendingCellStyle BackColor="#FFFDF8" />

<SortedDescendingHeaderStyle BackColor="#6F8DAE" />

asp:GridView>

<asp:SqlDataSource ID="SqlDataSource1" runat="server"

ConnectionString="<%$ ConnectionStrings:ConnectionString %>"

SelectCommand="SELECT [ProductID], [ProductName], [UnitPrice], [UnitsInStock] FROM [Products]">

asp:SqlDataSource>

div>

form>

body>

html>


Bir makalenin daha sonuna geldik. Bir sonraki makalede görüşmek dileğiyle. Hoşçakalın. Bahadır ŞAHİN

About Bahadır Şahin

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 comments:

Öne Çıkan Yayın

GridView da Seçili Satırı DetailsView da Göstermek

Merhaba arkadaşlar bu makalemizde GridView nesnesi ile birlikte DetailsView nesanesini birlikte kullanacağız. GridView da seçili satırın de...