Textbox中选定的dataGridView单元格的值

时间:2012-11-14 07:24:14

标签: c# datagridview textbox

我在windows窗体中有一个datagridview和textbox,当我点击datagridview的一个单元格时,该值必须复制到文本框。

我收到错误:

  

System.Windows.Forms.DataGridCell不包含RowIndex的定义

我试过这段代码

void dataGridView1_Click(object sender, EventArgs e)
 {
      Txt_GangApproved.Text=dataGridView1.CurrentCell.RowIndex.Cells["NO_OF_GANGS_RQRD"].Value.ToString();
 }

6 个答案:

答案 0 :(得分:2)

foreach (DataGridViewRow RW in dataGridView1.SelectedRows) {
    //Send the first cell value into textbox'
    Txt_GangApproved.Text = RW.Cells(0).Value.ToString;
}

答案 1 :(得分:2)

试试这个 -

Txt_GangApproved.Text = dataGridView1.SelectedRows[0].Cells["NO_OF_GANGS_RQRD"].Value.ToString();

答案 2 :(得分:1)

您正在使用错误的事件来实现您想要的目标。而不是使用单击事件使用dataGridView1的 CellClick 事件并尝试以下代码:

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
    if(e.RowIndex >= 0 && e.ColumnIndex >= 0)  //to disable the row and column headers
    {
       Txt_GangApproved.Text = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
    }
}

答案 3 :(得分:0)

有时当我的DataGridView将其选择模式设置为FullRowSelect时,我会使用 SelectionChanged 事件。然后我们可以在事件中写一行,如:

Txt_GangApproved.Text = Convert.ToString(dataGridView1.CurrentRow.Cells["NO_OF_GANGS_RQRD"].Value);

答案 4 :(得分:0)

private void dataGRidView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
        if (e.RowIndex >= 0)
        {
            DataGridViewRow row = this.dataGridView1.Rows[e.RowIndex];
            string text = row.Cells[dataGridView1.CurrentCell.ColumnIndex].Value.ToString();
        }
    }

答案 5 :(得分:0)

这是100%正常工作的代码(使用-CellClick-事件处理程序):

    private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
    {
        textBox1.Text = dataGridView1.CurrentCell.Value.ToString();
    }