【发布时间】:2012-05-31 23:33:57
【问题描述】:
我很困惑,花了很长时间试图调试这个事件。我有一列,我想在列中添加前 3 个单元格,并将第 4 个单元格更新为前 3 个单元格的总和。
这在我第一次填充前 3 个单元格时有效。之后,如果我再次尝试编辑任何单元格,第 4 个单元格将不会更改其值。它仅在我编辑第一个单元格时才有效。
有人知道为什么会这样吗?这是我的代码的一小部分:
int sum = 0;
for (int i = 0; i < 3; i++)
{
if (dataGridView1.Rows[i].Cells[1].Value == null)
sum += 0;
else
sum += int.Parse(dataGridView1.Rows[i].Cells[0].Value.ToString()) * int.Parse(dataGridView1.Rows[0].Cells[1].Value.ToString());
}
dataGridView1.Rows[3].Cells[1].Value = sum;
这些代码行在 dataGridView1_CellEndEdit 函数中,所以在我更改单元格的值之后发生。
【问题讨论】:
-
请不要在标题前加上“C#”之类的前缀。这就是标签的用途。
-
对不起,约翰,我在这里问的不多,提示一直告诉我要更具体,所以我试着把它扔进去。我会记住这一点,以备将来的问题。跨度>
-
dataGridView1.Rows[0] 在你的 else 语句中应该是 dataGridView1.Rows[i] ???
-
谢谢Thit,我想我一定是在做一些愚蠢的事情。不知道为什么我不能早点发现。
-
@user1234672:您需要将不同的行值添加到索引为 0 的第 4 行的第 2 列或每行的第 4 列吗?
标签: c# datagridview