سلام
دو تا دیتاگرید دارم که هر دو شامل دو ستون (شماره حساب و مبلغ) می باشند میخوام با زدن دکمه بیاد دیتاگرید اول را با دومی مقایسه کنه اگر شماره حسابی در دیتاگرید دوم بیشتر از یکبار تکرار شده در دیتاگرید سوم با تعداد تکرار نمایش داده شود.
سلام
دو تا دیتاگرید دارم که هر دو شامل دو ستون (شماره حساب و مبلغ) می باشند میخوام با زدن دکمه بیاد دیتاگرید اول را با دومی مقایسه کنه اگر شماره حسابی در دیتاگرید دوم بیشتر از یکبار تکرار شده در دیتاگرید سوم با تعداد تکرار نمایش داده شود.
دوستان لطفا راهنمایی کنید..
for(int i=0;i<datagridview1.rows.cou;i++){
for(int j=0;j<datagridview2.rows.cou;j++){
if(datagridview2.rows[j]["sotoone shomare hesab"]==datagridview1.rows[i]["sotoone shomare hesab"].values.tostring()){
add to datagridview3
}
}
}
من بصورت زیر نوشتم ولی یه مشکل کوچیک داره مثلا اگر ردیفی در گرید دوم سه بار تکرار شده باشه در دیتاگرید سوم نیز سه بار (سه سطر)نمایش داده میشه در صورتی که باید یکبار نمایش داده بشه و فقط تعداد تکرار رو سه بار باشه.
int counter;
bool IsExist = false;
for (int i = 0; i < GrdList1.RowCount; i++)
{
IsExist = false;
counter = 0;
for (int j = 0; j < GrdList2.RowCount; j++)
{
if (GrdList1.Rows[i].Cells[1].Value.ToString() == GrdList2.Rows[j].Cells[1].Value.ToString())
{
counter++;
IsExist = true;
GrdList1.Rows[i].DefaultCellStyle.BackColor = Color.Yellow;
GrdList2.Rows[j].DefaultCellStyle.BackColor = Color.Yellow;
IdSanad2 = (j+1).ToString();
NumHes2 = GrdList2.Rows[j].Cells[1].Value.ToString();
Mablagh2 = GrdList2.Rows[j].Cells[2].Value.ToString();
}
}
if (IsExist)
{
Gridm.Rows.Add((i + 1), GrdList1.Rows[i].Cells[1].Value, NumHes2, GrdList1.Rows[i].Cells[2].Value, Mablagh2, counter, IdSanad2);
IsExist = false;
}
}