点击datagridview表头时报异常system.argumentoutofrangeexception 索引值不能为负数arg_paramname_name啥的
datagridview内容是从0开始的,表头的索引是-1
然后实现了datagridview的CellClick事件,并在事件private void Dgv_todo_CellClick(object sender, DataGridViewCellEventArgs e)里用到了e.RowIndex 所以才引起的报错
在事件里加个判断 e.RowIndex < 0直接返回
private void Dgv_todo_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex < 0)
{
return;
}
var flag = (bool)(dgv_todo.Rows[e.RowIndex].Cells["checked1"].Value ?? false);
dgv_todo.Rows[e.RowIndex].Cells["checked1"].Value = !flag;
}