我在CellEndEdit
应用程序中有datagridview
的事件处理程序winforms
,当我在datagridview
中写完内容时会运行。现在我想在点击按钮时调用此事件。我怎样才能实现这一目标?感谢。
答案 0 :(得分:0)
让我们看一下常规事件处理程序。 (顺便说一句,你没有指定C#或VB所以我会使用VB)
这个子程序的名称是“Button1_Click”,它有2个参数,类型为Object和System.EventArgs。
通常情况下,系统只调用事件处理程序,但没有理由不能自己调用事件处理程序。
挑战将是如果事件处理程序中的代码依赖于发送方和事件参数,您将很难复制它,但如果您的代码不依赖于此,则只传入Nothing或null每个论点。
但是,如果存在常见行为,我将定义一个单独的函数,并从事件处理程序和按钮单击调用该函数。
示例:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
rgv_CellEndEdit(Nothing, Nothing)
End Sub
Private Sub rgv_CellEndEdit(ByVal sender As System.Object, ByVal e As Telerik.WinControls.UI.GridViewCellEventArgs) Handles rgv.CellEndEdit
FillGridLine()
If rgv.CurrentCell.ColumnInfo.Name = "ProductId" And rgv.CurrentCell.Value Is Nothing And IsDBNull(rgv.CurrentCell.Value) = True Then
rgv.CurrentRow = rgv.Rows(rgv.CurrentRow.Index)
rgv.CurrentColumn = rgv.Columns("ProductId")
End If
End Sub