[英]Dynamic Cell Click on DataGridView VB.NET
我有一個應用程序,其中它分為多個選項卡。 最多4個選項卡可以具有相同的DataGridView,但具有不同的數據。
我動態創建選項卡和數據網格視圖,它們分別命名為“ Entitlements1”,“ Entitlements2”等。
我為DataGridView添加了一個單元格雙擊事件處理程序,它在兩個選項卡上都適用於兩個DataGridViews,但是如何確定為其觸發事件的DataGridView?
我的代碼:
Public Shared Sub EntitlementsDGV(ByVal DriverNo As Integer)
Dim entdgv As New List(Of DataTable)
entdgv.Add(New DataTable)
entdgv.Add(New DataTable)
entdgv.Add(New DataTable)
entdgv.Add(New DataTable)
entdgv.Add(New DataTable)
'Find Driver Tab Control
Dim DriverTabCtrl = Functions.FindControl(Results, "DriverTab" & DriverNo)
'Find GroupBox Control
Dim GroupBoxCtrl = Functions.FindControl(DriverTabCtrl, "EntitlementGrpBx" & DriverNo)
'Find DataGridView
Dim DGVCtrl As DataGridView = Functions.FindControl(GroupBoxCtrl, "Entitlements" & DriverNo)
entdgv(DriverNo) = Results.EntitlementsTbl.Clone
Dim result() As DataRow = Results.EntitlementsTbl.Select("Driver = " & DriverNo & "")
For Each row As DataRow In result
entdgv(DriverNo).Rows.Add(row(0), row(1), row(2), row(3), row(4), row(5))
Next
DGVCtrl.DataSource = entdgv(DriverNo)
DGVCtrl.Columns(DGVCtrl.Columns.Count - 1).Visible = False
AddHandler DGVCtrl.CellDoubleClick, AddressOf EntitlementDblClick
End Sub
Public Shared Sub EntitlementDblClick(sender As Object, e As DataGridViewCellEventArgs)
MsgBox("Entitlement Box Double Click")
End Sub
這是我如何動態添加DataGridView的代碼
Dim NewDGV As New DataGridView
NewDGV.Name = "Entitlements" & DriverNo
NewDGV.Location = New Point(1, 1)
DGVSetup(NewDGV)
NewGrpBx.Controls.Add(NewDGV)
Public Shared Sub EntitlementDblClick(sender As Object, e As DataGridViewCellEventArgs)
MsgBox("Entitlement Box Double Click")
Dim dgv As DataGridView = DirectCast(sender, DataGridView)
End Sub
dgv將是觸發事件的datagridview
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.