private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            txtid.Text = dataGridView1.SelectedCells[0].Value.ToString().Trim();
            txtname.Text = dataGridView1.SelectedCells[1].Value.ToString().Trim();
            txtsex.Text = dataGridView1.SelectedCells[2].Value.ToString().Trim();
            txttel.Text = dataGridView1.SelectedCells[3].Value.ToString().Trim();
            txtqq.Text = dataGridView1.SelectedCells[4].Value.ToString().Trim();
            txtworktel.Text = dataGridView1.SelectedCells[5].Value.ToString().Trim();
            txtemail.Text = dataGridView1.SelectedCells[6].Value.ToString().Trim();
            txtmobile.Text = dataGridView1.SelectedCells[7].Value.ToString().Trim();
        }
为何总是说未将对象引用设置到对象的实例 

解决方案 »

  1.   

    断点看看到哪一句报错,应该是值为NULL把
      

  2.   


    private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
            { 
                txtid.Text =dataGridView1.SelectedCells[0].Value!=null? dataGridView1.SelectedCells[0].Value.ToString().Trim():""; 
                txtname.Text =dataGridView1.SelectedCells[1].Value!=null? dataGridView1.SelectedCells[1].Value.ToString().Trim():"";
                txtsex.Text =dataGridView1.SelectedCells[2].Value!=null?  dataGridView1.SelectedCells[2].Value.ToString().Trim():"";
                txttel.Text =dataGridView1.SelectedCells[3].Value!=null?  dataGridView1.SelectedCells[3].Value.ToString().Trim():""; 
                txtqq.Text =dataGridView1.SelectedCells[4].Value!=null?  dataGridView1.SelectedCells[4].Value.ToString().Trim():""; 
                ...
            } 
      

  3.   

    dataGridView中的cell没有那么多。如只有6个,你用了cells[6]就不可能的。
    请查一下。
      

  4.   

    加上e.Row.RowType 的条件判断 判断是只有数据行的时候做操作,你这样是包含头的肯定是错误了。
      

  5.   

    private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) 
            { 
     txtid.Text = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString().Trim();
                txtname.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString().Trim();
                txtsex.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString().Trim();
                txttel.Text = dataGridView1.Rows[e.RowIndex].Cells[3].Value.ToString().Trim();
                txtqq.Text = dataGridView1.Rows[e.RowIndex].Cells[4].Value.ToString().Trim();
                txtworktel.Text = dataGridView1.Rows[e.RowIndex].Cells[5].Value.ToString().Trim();
                txtemail.Text = dataGridView1.Rows[e.RowIndex].Cells[6].Value.ToString().Trim();
                txtmobile.Text = dataGridView1.Rows[e.RowIndex].Cells[7].Value.ToString().Trim(); 
    }
    这样看看.
      

  6.   

    而且我看你好象是想把选中行的数据显示到textbox里面,那就把dataGridView1的SelectionMode设为FullRowSelect,
    然后dgv.SelectedRows[0].Cells[0].Value.ToString().Trim()来获值。另外要先判断下SelectedRows或者SelectedCells的count值是不是0