DataGridView索引超出范围。必须是非负面的

时间:2017-11-16 16:23:14

标签: c# winforms datagridview

我在win表单中获得了一个DataGridView,我使用单击单击事件从所选的执行删除获取Ticket Number的值一切正常但是当我点击列标题时: enter image description here

我收到此错误

  

System.ArgumentOutOfRangeException:'索引超出范围。必须是非负数且小于集合的大小。   参数名称:index'   [![在此处输入图像说明] [2]] [2]

我收到此错误,因为在单元格点击事件中:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
        int indexRow = e.RowIndex;
        DataGridViewRow row = dataGridView1.Rows[indexRow]; //Debugger shows error here
        txtDelete.Text = row.Cells[0].Value.ToString();
    }

所以我需要帮助修补/修复这个小bug。 我正在使用所选单元格的RowIndex

1 个答案:

答案 0 :(得分:0)

在单元格点击事件中,我得到indexRow = -1所以我将代码更改为:

@Bean
@ConfigurationProperties(prefix="spring.datasource")
public DataSource dataSource() {
    return buildDataSource("spring.datasource");
}

private DataSource buildDataSource(String propPrefix) {
 Stirng driverClassName = env.getProperty(propPrefix + ".driver-class-name");
 return DataSourceBuilder.create()
        .driverClassName(driverClassName)
        .build();
}