当单击按钮时,我试图触发此命令
 Private Sub ClickDataGridview(sender As Object, e As DataGridViewCellMouseEventArgs)
    If e.RowIndex >= 0 Then
        Dim row As DataGridViewRow = DataGridView1.Rows(e.RowIndex)
        TextBox1.Text = row.Cells(0).Value.ToString
        TextBox2.Text = row.Cells(1).Value.ToString
    End If
End Sub
 Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        ClickDataGridview()
    End Sub但遗憾的是我收到了两个错误
未为“私有子DataGridViewCellMouseEventArgs)'.
)
我应该把它写成要工作的if语句吗?或者我是否应该尝试其他方法来触发这个事件?
发布于 2021-02-22 06:17:59
正如我可能已经提到的一两次,不要直接调用事件处理程序。将公共代码放入自己的方法中,然后酌情从每个事件处理程序中调用该方法。在这种情况下:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    GetRowValues(DataGridView1.CurrentRow)
End Sub
Private Sub DataGridView1_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles DataGridView1.CellMouseClick
    If e.Button = MouseButtons.Left AndAlso e.RowIndex >= 0 Then
        GetRowValues(DataGridView1.Rows(e.RowIndex))
    End If
End Sub
Private Sub GetRowValues(row As DataGridViewRow)
    TextBox1.Text = row.Cells(0).Value.ToString()
    TextBox2.Text = row.Cells(1).Value.ToString()
End Subhttps://stackoverflow.com/questions/66309982
复制相似问题