我突然回到它,经过多年的网的发展,和我有麻烦的东西,应该是简单的。我有一个 ArrayList 的业务对象开一个窗形式 DataGrid.我想用户能够编辑的细胞,并完成时,按一个保存按钮。在这一点上,我想循环的所有行和列 DataGrid 找到任何更改,并保存他们的数据库。但是我不能找到一种方式来访问的 DataGrid 排。

我也会想要验证个别单元现实的时间,因为他们是经过编辑,但我很确信,可以做到的。(也许不用 ArrayList 作为 DataSource?) 但是循环的 DataGrid, 我相当的惊讶,它似乎不可能的。

我必须真东西,我的商务对象的数据纳入数据表为了采用网格?

有帮助吗?

解决方案

foreach(var row in DataGrid1.Rows)
{
  DoStuff(row);
}
//Or ---------------------------------------------   
foreach(DataGridRow row in DataGrid1.Rows)
{
  DoStuff(row);
}
//Or ---------------------------------------------
for(int i = 0; i< DataGrid1.Rows.Count - 1; i++)
{
  DoStuff(DataGrid1.Rows[i]);
}

其他提示

object cell = myDataGrid[row, col];

是否有任何关于它3.0就是这么多好比1.1

我不知道关于3.0,但你可以写代码中VS2008年上运行的。网2.0的框架。(因此,你使用最新C#语言,但你只能使用的2.0库)

这得到你的仿制药(List<DataRow> 而不是那些GodAwful arraylist中)和一吨的其他东西,你会从字面上写的3倍小的代码。

啊哈,我真的只是测试的大家再一次!:)真正的答案是,很少需要迭代的数据表格.因为即使当结合对列表,结合是2的方式。然而,这是方便知道如何itereate格直接,它可以节省一些代码行。

但NotMyself和Orion了更好的答案:说服利益攸关方为移到一个更高的版本,以节省开发费用并提高可维护性和extensability.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top