[ popmilan76 @ 29.05.2017. 21:51 ] @
Imam dve tabele,i treba da mi budu oznacene crvenom bojom isti podaci,polje koje je indeticno je rbr...imam ovaj kod,i on radi kada idem samo redom,ali kada se prebacim na neki peti red,onda zacrveni sledeci i ako nije duplikat....


private void UporediDveTabele(object sender, EventArgs e)
{
//use the currentRow to compare against
for (int currentRow = 0; currentRow < dataGridView1.Rows.Count - 1; currentRow++)
{
DataGridViewRow rowToCompare = dataGridView1.Rows[currentRow];
//specify otherRow as currentRow + 1
for (int otherRow = currentRow + 1; otherRow < dataGridView2.Rows.Count; otherRow++)
{
DataGridViewRow row = dataGridView2.Rows[otherRow];

bool duplicateRow = true;
//compare cell ENVA_APP_ID between the two rows
if (!rowToCompare.Cells["rbr"].Value.Equals(row.Cells["rbr"].Value))
{
rowToCompare.DefaultCellStyle.BackColor = Color.Red;
rowToCompare.DefaultCellStyle.ForeColor = Color.Black;

duplicateRow = false;
break;
}
//highlight both the currentRow and otherRow if ENVA_APP_ID matches
if (duplicateRow)
{
rowToCompare.DefaultCellStyle.BackColor = Color.Red;
rowToCompare.DefaultCellStyle.ForeColor = Color.Black;
row.DefaultCellStyle.BackColor = Color.Red;
row.DefaultCellStyle.ForeColor = Color.Black;
}
}
}
}



gde gresim
[ Mihajlo Cvetanović @ 29.05.2017. 23:48 ] @
Nešto mi čudna ova dupla petlja sa različitim tabelama. Cilj je da za svaki rbr u jednoj tabeli pronađeš isti taj rbr u drugoj tabeli, ali ne pretražuješ celu tabelu, nego od pozicije koja sledi onoj iz prve tabele. Mnogo čudno. Šta ako u drugoj tabeli ima samo jedan red? Moraš da provrtiš celu drugu tabelu za svaki rbr iz prve.

Ako je rbr sortiran u obe tabele onda optimizacija koju možeš da uradiš je da imaš samo jednu petlju (a ne dve), ali da inkrementiraš samo jedan od dva indeksa u svakoj iteraciji, i to onaj indeks čiji je rbr manji. A ako je rbr isti onda možeš da inkrementiraš oba indeksa. Petlja je beskonačna, ali zapravo izlaz iz petlje je kad dođeš do kraja bilo koje tabele.
[ popmilan76 @ 30.05.2017. 09:58 ] @
ovaj kod sam malo preuredio,a nasao ga na netu,i on stvrano radi,ali samo ako idem red po red,ako preskocim neki,on zacrveni sledeci rad,i ako ga nisam obelezio...
[ popmilan76 @ 30.05.2017. 19:50 ] @
Reseno,hvala svima na trudu!
[ popmilan76 @ 30.05.2017. 20:07 ] @
U stvari,prepravio sam kod,da ih brise iz prve tabele,i da se pojavi u drugoj,i zanimljivo hoce za sve sem za prvih 2,3 rekorda u prvoj tabeli....