选择标头时,datagridview中的索引超出范围异常
本文关键字:索引 范围 异常 datagridview 选择 | 更新日期: 2023-09-27 18:14:47
我有一个datagridview,当我点击标题排序或出于任何原因,我得到以下代码行....
的错误参数的范围异常(索引超出范围)。
必须非负且小于集合的大小。 private void firearmView_CellClick(object sender, DataGridViewCellEventArgs e)
{
//I get the above error on the IF line below.
if (!firearmView.Rows[e.RowIndex].IsNewRow)
{
selectedFirearmPictureBox.Image = Image.FromFile(firearmView.Rows[e.RowIndex].Cells[12].Value.ToString(), true);
}
}
我不知道为什么我在这里得到这个特殊的错误
MSDN在文档中提到了RowIndex属性
当RowIndex属性返回-1时,单元格要么是列标题,或者单元格的行是共享的。
所以你需要处理e.RowIndex == -1当你收到事件
(...索引不能为负....)
private void firearmView_CellClick(object sender, DataGridViewCellEventArgs e)
{
if(e.RowIndex == -1) return;
if (!firearmView.Rows[e.RowIndex].IsNewRow)
{
selectedFirearmPictureBox.Image = Image.FromFile(firearmView.Rows[e.RowIndex].Cells[12].Value.ToString(), true);
}
}