0

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メソッドを使用するバインドされたデータグリッドです。

4

1 に答える 1

1

myTable.Columns.ColumnName。
詳細については、http://msdn.microsoft.com/en-us/library/system.data.datacolumn.columnname.aspxをご覧ください。

于 2012-07-08T20:28:18.257 に答える