chiqian2971 2019-05-03 11:52 采纳率: 25%
浏览 778
已采纳

c# dataGridView1 点击获取内容 点击标题栏出来超出索引错误

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
button2.Enabled = true;
Sheet_id= this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString();
sn.Text = this.dataGridView1.SelectedRows[0].Cells[1].Value.ToString();
brand.Text = this.dataGridView1.SelectedRows[0].Cells[2].Value.ToString();
model.Text = this.dataGridView1.SelectedRows[0].Cells[3].Value.ToString();
num.Text = this.dataGridView1.SelectedRows[0].Cells[5].Value.ToString();
colour.Text = this.dataGridView1.SelectedRows[0].Cells[4].Value.ToString();
describe.Text = this.dataGridView1.SelectedRows[0].Cells[6].Value.ToString();

代码如上   我目的是要点击datagridview 控件获取每一行的第一列数据   但是发现一个问题就是 读取数据库后 dategridview 有了数据  还有一行标题栏 点击标题直接报错    System.ArgumentOutOfRangeException:“索引超出范围。必须为非负值并小于集合大小。
Arg_ParamName_Name”    点击数据没有问题 点击标题栏就是这  请问什么原因呢 
还有有什么优化的代码吗 可以实现这个功能
  • 写回答

2条回答 默认 最新

  • threenewbee 2019-05-03 11:54
    关注

    在代码的开头加上

    if ( this.dataGridView1.SelectedRows.Count == 0)
    return;

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载