DataGridView a jeho refresh - C#, .NET

k1k1n

DataGridView a jeho refresh - C#, .NET
« kdy: 13. 03. 2010, 18:54:52 »
Zdravím,
sice tohle asi není správné místo pro takovéhle otázky, ale pohybuje se to dost lidí, tak by někdo mohl znát odpověď...

Mám problém s refreshem dat v DataGridView a to v tomhle případě:
DataSet naplním daty z databáze. Z jedné tabulky udělám DataView a pomocí DataView.Filter vyfiltruju řádky, které chci v DataGridView zobrazit - jde o řádky, které mají sloupec "platnost" nastaven na 1. A nastavím jako DataSource DataGridView.

Pokud ve vyfiltrovaném DataView změním hodnotu "platnost" na 0, po vybrání jiného řádku se DataGridView refreshne a přestane daný rádek zobrazovat.

Problém je v tom, že se DataGridView refreshne právě až po vybrání jiného řádku a nepomáhá ani když jiný řádek vyberu programově (např. SelectAll()  nebo ClearSelection() ). Existuje nějaký způsob, ja ho přinutit k refreshi hned? Hlavní důvod proč to potřebuji je ten, že pokud DGV zobrazuje pouze jeden řádek, a já změním jeho "platnost", RowState zdrojové DataTable zůstane unchanged (ale hodnota sloupce "platnost" se změní) a při updatu databáze podle DataSetu se mi řádek do databáze nereflektuje.

Celé tohle chování mi přijde nějaké divné (proč je RowState unchanged, když se řádek prokazatelne změnil?), ale existuje nějaký způsob, jak to vyřešit, nebo nějaké vhodnější místo, kde se zeptat?:-)

Díky za každý nápad.