Gebruik een DataGridRow not a DataRow het zijn verschillende objecten
foreach (DataGridRow drv in PGIPortfolio.Items)
Het is echter niet duidelijk wat Items in deze context is. Ervan uitgaande dat PGIPortfolio de DataGridView is, moet uw lus worden geschreven als
foreach (DataGridRow drv in PGIPortfolio.Rows)
BEWERKEN Ik nam aan dat je het DataGridView-besturingselement in WinForms gebruikte, niet het WPF DataGrid. In dit geval is de juiste aanpak om de eigenschap ItemsSource te gebruiken.
Probeer deze code....
var itemsSource = PGIPortfolio.ItemsSource as IEnumerable;
if (itemsSource != null)
{
foreach (var item in itemsSource)
{
var row = PGIPortfolio.ItemContainerGenerator.ContainerFromItem(item) as DataGridRow;
if (row != null)
{
.....
}
}
}