Verwenden Sie eine DataGridRow kein DataRow sie sind verschiedene Objekte
foreach (DataGridRow drv in PGIPortfolio.Items)
Es ist jedoch nicht klar, was Items in diesem Zusammenhang ist. Unter der Annahme, dass PGIPortfolio die DataGridView ist, sollte Ihre Schleife als
geschrieben werdenforeach (DataGridRow drv in PGIPortfolio.Rows)
BEARBEITEN Ich bin davon ausgegangen, dass Sie das DataGridView-Steuerelement in WinForms verwenden, nicht das WPF-DataGrid. In diesem Fall ist die Verwendung der ItemsSource-Eigenschaft der richtige Ansatz.
Bitte versuchen Sie diesen 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)
{
.....
}
}
}