上へボタン、下へボタンでリストビューの行を入れ替えるには、以下のようにします。
Public Class ListViewForm
''' <summary>
''' 上へボタンクリック
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub UpButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UpButton.Click
'アイテムが選択されていない場合抜ける
If ListView1.SelectedItems.Count = 0 Then
Return
End If
'先頭のアイテムが選択されている場合抜ける
If ListView1.SelectedItems(0).Index = 0 Then
Return
End If
'挿入先のインデックス
Dim insertPosition As Integer = ListView1.SelectedItems(0).Index - 1
'選択されたアイテム
Dim itm As ListViewItem = ListView1.SelectedItems(0)
'選択されたアイテムを削除する
ListView1.Items.Remove(itm)
'アイテムを挿入する
ListView1.Items.Insert(insertPosition, itm)
End Sub
''' <summary>
''' 下へボタンクリック
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
''' <remarks></remarks>
Private Sub DownButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DownButton.Click
'アイテムが選択されていない場合抜ける
If ListView1.SelectedItems.Count = 0 Then
Return
End If
'最後のアイテムが選択されている場合抜ける
If ListView1.SelectedItems(0).Index = ListView1.Items.Count - 1 Then
Return
End If
'挿入先のインデックス
Dim insertPosition As Integer = ListView1.SelectedItems(0).Index + 1
'選択されたアイテム
Dim itm As ListViewItem = ListView1.SelectedItems(0)
'選択されたアイテムを削除する
ListView1.Items.Remove(itm)
'アイテムを挿入する
ListView1.Items.Insert(insertPosition, itm)
End Sub
End Class