PDA

View Full Version : ايجاد فيلد محاسباتي در گريد



mojtaba0912433
پنج شنبه 02 مرداد 1393, 16:55 عصر
با سلام به اساتيد
من با اين خط كد
dt.Columns.Add(new DataColumn("new_fild", typeof(Decimal), "mande*-1"));
يه ستون به گريد اضافه ميكنم و ميخوام ستون mande را در عدد -1 ضرب كنه

حالا مشكل اينجاست ميخوام يه شرط بزارم كه فقط عددهايي از ستون mande را در -1 ضرب كنه كه خودشون منفي هستن و عددهاي مثبت را همونطور كه هستن در اين ستون جديد بياره اگر محبت كنين و اون شرط را راهنمايي كنين ممنون ميشم

mojtaba0912433
پنج شنبه 02 مرداد 1393, 19:42 عصر
راه حلي نداره؟؟
يا سوالما بد مطرح كردم؟

juza66
پنج شنبه 02 مرداد 1393, 20:19 عصر
سوال رو فکر کنم درست فهمیده باشم

شما میخواهید در Column دیتاگرید تمام سطر ها در عدد منفی 1 ضرب و حاصل رو درون تکس باکس بذارید؟ درسته؟!

این جمع کل ستون Mandeh رو حساب میکنه خودت تغییرش بده


double summ = default(double);
for (int i = 0; i <= ds.Tables["tblbuyer"].Rows.Count - 1; i++)
{
DWG1.Rows.Add();
for (int j = 0; j <= 8; j++)
{
DWG1[j, i].Value = ds.Tables["tblbuyer"].Rows[i][j].ToString();

}
summ += Convert.ToDouble(DWG1["mandeh", Convert.ToInt32(i)].Value);
txtbedehi.Text = summ.ToString("0,#");

}

mojtaba0912433
پنج شنبه 02 مرداد 1393, 20:37 عصر
نه دوست عزيز همونطور كه در عكس مشاهده ميكنيد يه ستون هست به نام expe1004 كه بعضي از اعدادش مثبت هست بعضي منفي
با اين كد:


dt.Columns.Add(new DataColumn("new_fild", typeof(Decimal), "expr1004*-1

يه ستون جديد ايجاد كردم كه ستون قبل را در منفي يك ضرب ميكنه

من ميخام فقط اعداد منفي را ضرب كنه اعداد مثبت را خودشون را بياره در ستون جديد
به عنوان مثال اون عدد آخري را ديگه در منفي يك ضرب نكنه
ممنون از توجه شما

121509

khokhan
پنج شنبه 02 مرداد 1393, 22:25 عصر
نه دوست عزيز همونطور كه در عكس مشاهده ميكنيد يه ستون هست به نام expe1004 كه بعضي از اعدادش مثبت هست بعضي منفي
با اين كد:


dt.Columns.Add(new DataColumn("new_fild", typeof(Decimal), "expr1004*-1

يه ستون جديد ايجاد كردم كه ستون قبل را در منفي يك ضرب ميكنه

من ميخام فقط اعداد منفي را ضرب كنه اعداد مثبت را خودشون را بياره در ستون جديد
به عنوان مثال اون عدد آخري را ديگه در منفي يك ضرب نكنه
ممنون از توجه شما



private void dataGridView1_CellValidated(object sender, DataGridViewCellEventArgs e) {
if (e.RowIndex > -1)
{
for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
{
Int32 valueB = Int32.Parse(dataGridView1.Rows[i].Cells[1].Value.ToString());
if (valueB < 0)
{
dataGridView1.Rows[i].Cells[2].Value = Convert.ToInt32(valueB * -1);

}
else
{
dataGridView1.Rows[i].Cells[2].Value = dataGridView1.Rows[i].Cells[1].Value;
}
}
}
}

mojtaba0912433
پنج شنبه 02 مرداد 1393, 22:49 عصر
اتفاقي با اين كد نيفتاد ؟؟!!

khokhan
پنج شنبه 02 مرداد 1393, 23:14 عصر
اتفاقي با اين كد نيفتاد ؟؟!!

.................................. بفرما