PDA

View Full Version : جمع ستون گرید ویو ، اما نه از طریق select-sum



Leyla2011
چهارشنبه 27 اردیبهشت 1391, 19:01 عصر
سلام علیکم

دوستان کسی میدونه چطور ستونهای یک گرید را جمع بزنم

اطلاعاتی که توی گرید هست از دیتابیس میاد

میدونم از طریق دیتا بیس باselect کردن فیلد مورد نظر و اعمال دستورsumمیشه اینکار رو کرد اما از روشی که از طریق خود گرید جمع زده بشه مد نظرمه

fakhravari
جمعه 29 اردیبهشت 1391, 17:59 عصر
2 روش داره.
1) گرید تمپلت کرده باشد
2) از حالت اماده خودش استفاده میکنید
کدام روش استفاده کردید؟

Leyla2011
جمعه 29 اردیبهشت 1391, 20:41 عصر
2 روش داره.
1) گرید تمپلت کرده باشد
2) از حالت اماده خودش استفاده میکنید
کدام روش استفاده کردید؟
اطلاعاتم را از دیتابیس توی گرید نمایش میدهم بصورت binding

fakhravari
جمعه 29 اردیبهشت 1391, 20:54 عصر
این یه روش
protected void Button1_Click(object sender, EventArgs e)
{
int sum = 0;
for (int i = 0; i < GridView1.Rows.Count; i++)
{
sum += Int32.Parse(GridView1.Rows[i].Cells[0].Text);
}
Label1.Text = sum.ToString();
}

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
int sum = 0;
for (int i = 0; i < GridView1.Rows.Count; i++)
{
sum += Int32.Parse(GridView1.Rows[i].Cells[0].Text);
}
Label1.Text = sum.ToString();
}

fakhravari
جمعه 29 اردیبهشت 1391, 21:00 عصر
اینم با کمی تغیر میتونید در حالت تمپلت استفاده کنید
protected void Button1_Click(object sender, EventArgs e)
{
try
{
foreach (GridViewRow row in GridView1.Rows)
{
TextBox textnum = row.FindControl("TextBox1") as TextBox;
Label txtid = row.FindControl("Label3") as Label;


if (textnum != null && txtid != null)
{
int valuenu = Int32.Parse(textnum.Text);
int valueid = Int32.Parse(txtid.Text);

Edit(valuenu, valueid);


}
}

lasteror = "اطلاعات ثبت شد";
Response.Write(lasteror);
}
catch
{
lasteror = "اشکال در ثبت اطلاعات";
Response.Write(lasteror);
}
}

Leyla2011
شنبه 30 اردیبهشت 1391, 05:48 صبح
اینم با کمی تغیر میتونید در حالت تمپلت استفاده کنید
protected void Button1_Click(object sender, EventArgs e)
{
try
{
foreach (GridViewRow row in GridView1.Rows)
{
TextBox textnum = row.FindControl("TextBox1") as TextBox;
Label txtid = row.FindControl("Label3") as Label;


if (textnum != null && txtid != null)
{
int valuenu = Int32.Parse(textnum.Text);
int valueid = Int32.Parse(txtid.Text);

Edit(valuenu, valueid);


}
}

lasteror = "اطلاعات ثبت شد";
Response.Write(lasteror);
}
catch
{
lasteror = "اشکال در ثبت اطلاعات";
Response.Write(lasteror);
}
}
مرسی ، ممنونم از توضیحاتتون .

اما این روش وقتی داده ها زیاد باشه زمانبر است با جاوا اسکریپت چطور میشه این کار و کرد؟

fakhravari
شنبه 30 اردیبهشت 1391, 13:03 عصر
اونم یه روشی.
اما نگران زمانش نباشید .
اکی ثانیه محاسبه میکنه :بامزه: