Datagridview SelectionChanged事件基于行选择

时间:2014-01-14 21:55:48

标签: c# .net visual-studio datagridview datagridviewrow

我在TabPage上有一个DataGridView。当用户点击一行时,会出现第二个DGV。每行与其自己的DGV相关联,其中包含数据。我想要的是当用户从一行转到另一行时,DataGridView也会改变。到目前为止,我已经尝试过SelectionChanged事件但是我不希望DGV在用户点击同一行中的单独单元格时重新加载。非常感谢任何帮助。

void dgv1_CellClick(object sender, DataGridViewCellEventArgs e)           
{    
    int rowIndex = dgv1.Rows[e.RowIndex].Index;

    if (dgv1 == null)
        return;
    if (dgv1.Rows[e.RowIndex].Cells[rowIndex].Selected == true);
    {
        dgv2.Size = new Size(dgv2.Width + 800, dgv2.Height);
        dgv2.Location = new Point(0, 500);   

        tp.Controls.Add(dgv2);

        Console.WriteLine("Row clicked");
    }
}

-Tatiana

2 个答案:

答案 0 :(得分:12)

    int curRow = -1;

    private void dgv1_SelectionChanged(object sender, EventArgs e)
    {
        if (dgv1.CurrentRow.Index != curRow)
        {
            curRow = dgvPatientDetail.CurrentRow.Index;        
        }

答案 1 :(得分:2)

我知道这篇文章很老但是其他人阅读: 设置..

  

DataGridView1.FullRowSelect = true

应解决此问题。