首页 文章

datagridview所有单元格值都传递给label

提问于
浏览
-2

enter image description here

private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
               if (e.RowIndex < 0 || e.ColumnIndex < 0)
                    return;

                string id, name, price, desc, quan;
                id = dgvWarp.Rows[e.RowIndex].Cells[0].Value + "";
                name = dgvWarp.Rows[e.RowIndex].Cells[1].Value + "";
                price = dgvWarp.Rows[e.RowIndex].Cells[2].Value + "";
                desc = dgvWarp.Rows[e.RowIndex].Cells[3].Value + "";
               // quan = dgvWarp.Rows[e.RowIndex].Cells[4].Value + "";

                label2.Text = id;
                label3.Text = name;
                label4.Text = price;
                label5.Text = desc;
}

这是我的单元格单击事件处理程序代码 . 但是这个代码没有被触发,我需要 . 实际上我希望datagridview单元格值自动传递给标签 . 如果我在某些单元格中输入值只传递数据到标签保持空白,如果我输入所有单元格显示根据图像的所有标签
enter image description here

只有第1行显示值,如果我输入第1列第2行单元格(test2),那么它将显示test2代替test1 . 这是我的问题

1 回答

  • 0

    根据行和列索引给出标签名称 . 即 . lblRow0Col0, lblRow0Col1, lblRow1Col2

    然后在CellValidating事件中编写以下代码

    private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
    {
        String lblName = String.Format("lblRow{0}Col{1}", e.RowIndex, e.ColumnIndex);
        Label lbl = (TextBox)this.Controls[lblName];
        lbl.Text = e.FormattedValue.ToString();
    }
    

相关问题