Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 如何在正在编辑的dgv1中的行的正下方显示dgv2_Vb.net_Datagridview - Fatal编程技术网

Vb.net 如何在正在编辑的dgv1中的行的正下方显示dgv2

Vb.net 如何在正在编辑的dgv1中的行的正下方显示dgv2,vb.net,datagridview,Vb.net,Datagridview,我试图在dgv1上显示dgv2,但就在正在编辑的dgv1中的行下方 我用这个密码试过了 Private Sub Purchases_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles Purchases.CellBeginEdit Dim Y as integer = 0 For i As Integer

我试图在dgv1上显示dgv2,但就在正在编辑的dgv1中的行下方

我用这个密码试过了

  Private Sub Purchases_CellBeginEdit(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellCancelEventArgs) Handles Purchases.CellBeginEdit

    Dim Y as integer = 0

   For i As Integer = 0 To dgv1.CurrentRow.Index
            If dgv1.Rows(i).Index < dgv1.CurrentRow.Index Then
                Y = dgv1.Rows.Count * dgv1.Rows(0).Height + dgv1.ColumnHeadersHeight + 12
            End If
        Next
        dgv2.Location = New Point(53, Y)

  End Sub
我显示的很好,但当我返回到dgv1上的第1行时,它保持在原来的位置。假设我从第1行开始编辑,到了第4行,我想在第1行进行更正,我想dgv2移回第1行


任何帮助都将不胜感激。

我删除了if条件,它工作得非常完美

这是密码

    Try
        For i As Integer = 0 To Purchases.CurrentRow.Index

       Y = i * Purchases.Rows(0).Height + Purchases.ColumnHeadersHeight + 34


        Next

        itemlist.Location = New Point(53, Y)

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

我自己也遇到了这个问题,发现使用鼠标y位置减去表单顶部+24非常有效

Private Sub DataGridView1_CellEnter(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellEnter
    mouseY = Windows.Forms.Cursor.Position.Y - Me.Top + 24
End Sub

在哪种情况下调用dgv2以显示在dgv1行下方?dgv1单元格开始编辑。谢谢