2つのフォームを持つプログラムがあり、両方のフォームに独自のグリッドがあります。Grid1はform1にあり、Grid2はform2にあります。Grid2を編集に使用するポップアップウィンドウとして機能させたい。ユーザーがGrid1の行をダブルクリックすると、その行だけで再クエリを実行し、Grid2にその単一の行を表示する必要があります。選択した行の列名を取得して、その一意の識別子に対してクエリを実行する方法がわかりません。私がこれまでに持っているもの:(ちなみにこれはform1にあります)
Public Sub dgvForm1_CellDoubleClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgvForm1.CellDoubleClick
Dim i As Integer = 0
Dim rowIndex As Integer
Dim cellName as string
While dgvForm1.SelectedRows.Item(0).Cells(i).ColumnIndex < dgvForm1.ColumnCount
rowIndex = dgvForm1.SelectedRows.Item(0).HeaderCell.RowIndex
cellName = dgvForm1.SelectedRows.Item(0).HeaderCell.toString
Select Case cellName
Case "control_no"
Dim sControlNum = cellName.ToString
Case "store_id"
Dim sStoreNum = cellName.ToString
End Select
i = i + 1
End While
end sub
他の多くのレコードとともにデータグリッドビューに表示され、ダブルクリックイベントをトリガーする行をユーザーにダブルクリックしてもらいたいだけです。次に、control_idとstore_idの両方が検出され、それらの値が取得されるまで、選択された行の列名がループされます。追伸私はグーグルを1時間ほど試しましたが、テクニックをうまく動かすのに苦労しました。
更新:おそらく追加する必要があります。これは、sqlClientとそのdataadapter/datasetメソッドを使用するバインドされたデータグリッドです。