循环通过DataSet表

时间:2013-03-28 22:49:51

标签: c# wpf datagrid visual-studio-2012 wpfdatagrid

我使用VS 2010多年后安装了VS 2012,我甚至无法再通过表行进行循环(这在以前是轻而易举的),这对我的项目来说绝对至关重要。

我尝试了很多方式来调用DataGrid.Rows,但用户根本无法再使用它了,所以我试图找到一个解决方法。

以下是我的想法,但第二部分并不适合我。

foreach (TableRow row in MyDatabaseDataSet.Tables["Table1"].Rows)
{
//Pesky lengthy non-working code supposed to generate 
//controls dependent on row cell value
}

只是为了让事情变得更简单(代码不能正常工作,在这里发布它会是反建设性的。相反,让我们尝试获取一个消息框来显示该行的第二列中单元格的值在

但没有任何事情。

我尝试了许多我能想到的方法,包括:

MessageBox.Show(row.Cells[2].Value);
MessageBox.Show(row.Cells[2].Text);

但它根本不适合我!

甚至根本不想运行该项目。

如何循环遍历DataTable甚至Datagrid中的所有行?

PS:我忘了提及,但我还在上面写的foreach语句之前的代码中添加了加载数据段。

1 个答案:

答案 0 :(得分:5)

也许我忽略了一些简单的事情,但DataTable.Rows会返回DataRowCollection,其中包含DataRows而不是TableRows

所以而不是

foreach (TableRow row in MyDatabaseDataSet.Tables["Table1"].Rows)
{
    // ...
}

这样:

foreach (DataRow row in MyDatabaseDataSet.Tables["Table1"].Rows)
{
    // ...
}