我有一个WIndows表单应用程序。我需要一个DataGridView,所以我添加了一个。我假设用户添加了一些行并按下保存按钮。
此时我想保存网格中的所有行。我遍历所有的行
foreach (DataGridViewRow item in dataGridView.Rows)
{
}
现在问题。我在网格中测试了一行。第一行(我输入)正确。然后来了一个我没有注意到的那一行。该行中的所有值对于int都为1,对于string为null。然后是一行,这对于每一列都是空的。
编辑: 我可以解释一下我想做什么。我有4个品牌的对象。我有这个对象的列表。我希望用户编辑和制作列表及其内部的对象,
EDIT2: 我的问题不是获取数据。我的问题是获取不存在的数据。我现在尝试了4行。所以我在网格中提交了4行。
我的输入是
1 2 a 1
12 3 b 3
12 4 c 4
13 5 d 5
输出
1 2 a 1
1 1 null 1 (why the heck is that one here :( )
12 3 b 3
12 4 c 4
13 5 d 5
null null null null (this row i could live with cause i know where it comes from)
答案 0 :(得分:1)
这是一个新行,请检查if (item.IsNewRow) continue;
答案 1 :(得分:1)
制作你的DataTable dt,dt.AcceptChanges(); 并在foreach中启动循环(dt.Rows中的DataRow dr)