微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C# - 使用 foreach 和 if 语句循环遍历 DataGridView 行 - 缺少最后一个条目

如何解决C# - 使用 foreach 和 if 语句循环遍历 DataGridView 行 - 缺少最后一个条目

我有一个带有复选框列的 DataGridView。

enter image description here

现在我想遍历所有行,使用一个活动复选框并打印出 IdUserTrue

foreach (DataGridViewRow row in userDataGridView.Rows)
            {
                if (row.Cells[5].Value.ToString() == "True")
                {
                    MessageBox.Show(row.Cells[0].Value.ToString() + " - " + row.Cells[5].Value.ToString());
                }

            }


在本例中,IdUser 为 17 的行是最后选择的行。

我不知道为什么,但我只看到条目 15 是最后一个。 17 不再显示...

有人可以帮忙吗?


我现在尝试了以下方法

foreach (DataGridViewRow row in userDataGridView.Rows)
            {
                msg += row.Cells[0].Value.ToString() + " - " +
                     row.Cells[5].Value.ToString() + "\r\n";
            }

并且有经验,总是以某种方式无法识别带有选定复选框的最后一行。

解决方法

好的,我找到了解决方案。我加了

userDataGridView.EndEdit();

在循环之前和现在最后选择的复选框也被识别。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。