首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >VB.NET触发器数据视图单元单击按钮Click

VB.NET触发器数据视图单元单击按钮Click
EN

Stack Overflow用户
提问于 2021-02-22 04:19:46
回答 3查看 1K关注 0票数 0

当单击按钮时,我试图触发此命令

代码语言:javascript
运行
复制
 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)'.

  • Argument”的参数“发送方”指定
  1. 参数(发送方作为对象,e作为参数e未指定为“Private”(发送方为对象,e为DataGridViewCellMouseEventArgs)'

)

我应该把它写成要工作的if语句吗?或者我是否应该尝试其他方法来触发这个事件?

EN

Stack Overflow用户

发布于 2021-02-22 06:17:59

正如我可能已经提到的一两次,不要直接调用事件处理程序。将公共代码放入自己的方法中,然后酌情从每个事件处理程序中调用该方法。在这种情况下:

代码语言:javascript
运行
复制
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 Sub
票数 0
EN
查看全部 3 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66309982

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档