作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 DataGridView 时遇到问题。当尝试删除其中一个项目并重新加载网格时,我有一个绑定(bind)到网格的 3 个项目的集合。
如果有代码
If (dlg.ShowDialog() = DialogResult.OK) Then
'Show dialog with grid on it
End If
在打开的对话框中,我从网格中删除一个项目(这应该依次从集合中删除该项目,然后重新加载网格),然后它返回到“If (dlg.show... "行,错误为
“System.Windows.Forms.dll 中第一次出现“System.IndexOutOfRangeException”类型的异常
附加信息:索引 2 没有值。 ”
(我已针对公共(public)语言运行时错误闯入了调试器)
如果我尝试访问任何单元格、行或列,我可以理解此错误,但我不能,然后我希望异常停止在尝试访问此网格数据的代码行上,而不是停止在“如果(dlg.ShowDialog()...”行
有什么想法吗?干杯
最佳答案
我发现如果你添加
DataGridView.DataSource = Nothing
DataGridView.Refresh()
将网格重置为集合之前(已删除的项目被删除)
DataGridView.DataSource = MyCollection
它就像一个魅力。仍然对为什么必须这样做感兴趣。
关于.Net DataGridView "Index 0 does not have a value.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1630200/
我是一名优秀的程序员,十分优秀!