1
したがって、データベースのデータでデータグリッドビューを作成しています。 この時点で、ユーザーは、データグリッドビュー内の1つ以上の行を選択してもしなくてもよい(マウスクリック/キーを押すことによって)。DataGridView複数の行選択、特定の列データの取得
私は(選択時に)新しいデータセット、データテーブルを作成し、前記データグリッドビューからのいくつかのデータを含む行を追加する必要があります。
たとえば、テーブルに名前だけが含まれているとします。私は、さらなる処理のための別の方法にそれを渡すことができますように、新しいデータセットにそれらの名前を追加するためにショーンとラリー上で選択をドラッグし、ユーザークリックすると
Joe
Sean
Larry
Chris
、。
ここに私がいる場所があります。
'Get index of current row
Dim currentMouseRow As New Integer
currentMouseRow = dataGridView_UnAssodevices.HitTest(e.X, e.Y).RowIndex
'grab cell data of selected rows
Dim ds As New DataSet
Dim dt As New DataTable
For Each row As DataGridViewRow In dataGridView_UnAssodevices.SelectedRows
Dim dr As New DataGridViewRow
Dim data As New DataGridViewTextBoxCell
data.Value = row.Cells(0).Value
dr.Cells.Add(data)
dt.Rows.Add(dr)
MessageBox.Show(data.ToString)
Next
'Add contextmenu if right clicked
If e.Button = MouseButtons.Right Then
Dim m As New ContextMenu()
If currentMouseRow >= 0 Then
dataGridView_UnAssodevices.Rows(currentMouseRow).Selected = True
m.MenuItems.Add(New MenuItem("View Full Device Info"))
m.MenuItems.Add(New MenuItem("Associate Device(s)"))
End If
m.Show(dataGridView_UnAssodevices, New Point(e.X, e.Y))
End If
しかし、私はこのエラーを取得しておいてください。
Input array is longer than the number of columns in this table.
私は、列の宣言を欠落しているか、セットにテーブルを追加しているいずれかのように見えますか?
私はそれを見落として信じられないことがあります、ありがとう! – Ealianis