■No33081に返信(ねここねこさんの記事)
移動したい行をDataGridView1.SelectedRowsにより取得
DataGridView1.Rows.Removeにより一旦削除
移動先にInsertRangeで挿入
Dim rows = (From r In DataGridView1.SelectedRows.OfType(Of DataGridViewRow)()
Order By r.Index).ToArray
'--- 上の行インデックスを取得
Dim idx1 = rows(0).Index - 1
'--- 削除
For Each row In rows
DataGridView1.Rows.Remove(row)
Next
'--- 挿入
DataGridView1.Rows.InsertRange(idx1, rows)
'列のヘッダーに文字を設定 DataGridView1.Columns(0).HeaderText = "A" DataGridView1.Columns(1).HeaderText = "B"
'セルに値を設定 Dim i As Integer For i = 0 To DataGridView1.Rows.Count - 1 '行のヘッダーに文字を設定 DataGridView1.Rows(i).HeaderCell.Value = Convert.ToString(i + 1) 'セルに文字を設定 DataGridView1(0, i).Value = "A" & i + 1 DataGridView1(1, i).Value = "B" & i + 1 Next i
'DataGridView1.Rows(1).Cells(1).Value = "TEST"
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'選択中の行 For Each r As DataGridViewRow In DataGridView1.SelectedRows '選択中の行を1つ上に移動 '---------ここ---------- Next r