私はレポート Web サイトに取り組んでおり、現在、ボタン列のあるデータグリッドを持っています。ボタンの 1 つがクリックされたときに、別のページをロードし、SQL クエリを実行して別のデータグリッドに入力する必要があります (ただし、イベントを機能させるために、2 番目のデータグリッドは同じページにあります)。私が抱えている問題は、作成した Sub が到達不能なコードのように見えることです。私の理解では、イベント ハンドラーは ItemCommand である必要があります。これが私のコードです:
Private Sub DataGrid2_ItemCommand(source As Object, e As DataGridCommandEventArgs) Handles DataGrid2.ItemCommand
Dim DT1 As New DataTable
Dim DR1 As SqlClient.SqlDataReader
Using cn As New SqlClient.SqlConnection
cn.ConnectionString = constr
cn.Open()
'not hitting the breakpoint which is why the datagrid isn't populating
SQLstr = "long SQL query"
Using cmd As New SqlClient.SqlCommand(SQLstr, cn)
cmd.CommandText = SQLstr
DR1 = cmd.ExecuteReader
Dim DR As DataRow
If DR1.HasRows Then
DT1.Load(DR1)
For Each col In DT1.Columns
col.ReadOnly = False
Next
If Not DR1 Is Nothing Then
DT1.Load(DR1)
DataGrid2.DataSource = DT1
DataGrid2.DataBind()
Else
DataGrid2.DataSource = Nothing
DataGrid2.DataBind()
End If
End If
End Using
End Using
End Sub
サブが作成されるブレークポイントを導入しましたが、データグリッドのボタンをクリックしてもヒットしません。誰でも手伝ってもらえますか?