8

我在 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");
    }
}

-塔蒂亚娜

4

2 回答 2

13
    int curRow = -1;

    private void dgv1_SelectionChanged(object sender, EventArgs e)
    {
        if (dgv1.CurrentRow.Index != curRow)
        {
            curRow = dgvPatientDetail.CurrentRow.Index;        
        }
于 2014-01-14T23:31:59.247 回答
3

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

DataGridView1.FullRowSelect = true

应该解决这个问题。

于 2016-10-17T02:08:12.210 回答