chiqian2971 2019-05-03 11:52 采纳率: 50%
浏览 769
已采纳

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 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题