c# winfrom datagridview 点击列名出现错误

代码:string buttonText = this.dataGridView4.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
错误:
索引超出范围。必须为非负值并小于集合大小
如何解决?

RowIndex或ColumnIndex可能是-1你自己要判断一下

e.RowIndex 和e.ColumnIndex都得判断吧,其实获取datagridview中选中的单元格的column和row还有很多方法,比如currentCell,selectedRowIndex等。