Listview Up/Down

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Thormason.

    VB.NET-Quellcode

    1. Private Sub ListBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles ListBox1.KeyDown
    2. If e.KeyCode = Keys.Down And ListBox1.SelectedIndex <> ListBox1.Items.Count - 1 Then
    3. Dim saveitem = ListBox1.Items(ListBox1.SelectedIndex)
    4. Dim savevalue = ListBox1.SelectedIndex
    5. ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
    6. ListBox1.Items.Insert(savevalue + 1, saveitem)
    7. ListBox1.SelectedIndex = savevalue
    8. ElseIf e.KeyCode = Keys.Up And ListBox1.SelectedIndex <> 0 Then
    9. Dim saveitem = ListBox1.Items(ListBox1.SelectedIndex)
    10. Dim savevalue = ListBox1.SelectedIndex
    11. ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
    12. ListBox1.Items.Insert(savevalue - 1, saveitem)
    13. End If
    14. End Sub

    Nicht der beste code :P aber sollt soweit funktionieren :D

    edit:
    Mir fällt grad auf das da was nicht passt :D
    edit2:
    So, jetzt passts :D
    Ich auch :D

    VB.NET-Quellcode

    1. Private Sub Listview1_KeyDown(sender As Object, e As KeyEventArgs) Handles ListView1.KeyDown
    2. If e.KeyCode = Keys.Down And ListView1.Items.IndexOf(ListView1.FocusedItem) <> ListView1.Items.Count - 1 Then
    3. Dim saveitem = ListView1.Items(ListView1.Items.IndexOf(ListView1.FocusedItem))
    4. Dim savevalue = ListView1.Items.IndexOf(ListView1.FocusedItem)
    5. ListView1.Items.RemoveAt(ListView1.Items.IndexOf(ListView1.FocusedItem))
    6. ListView1.Items.Insert(savevalue + 1, saveitem)
    7. 'ListView1.Items.IndexOf(ListView1.FocusedItem) = savevalue
    8. 'ElseIf e.KeyCode = Keys.Up And ListView1.SelectedIndex <> 0 Then
    9. ' Dim saveitem = ListView1.Items(ListView1.SelectedIndex)
    10. ' Dim savevalue = ListView1.Items.IndexOf(ListView1.FocusedItem)
    11. ' ListView1.Items.RemoveAt(ListView1.Items.IndexOf(ListView1.FocusedItem))
    12. ' ListView1.Items.Insert(savevalue - 1, saveitem)
    13. End If
    14. End Sub


    Für die runter taste funktionierts jetzt schonmal :D
    Das war ja auch alles was du wolltest oder? :D