ListBox Rechtsklick Menu deaktivieren.

  • VB.NET
  • .NET 5–6

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Neuling.

    ListBox Rechtsklick Menu deaktivieren.

    Hallo zusammen,

    ich habe auf meiner Form eine ListBox. Aus der ListBox lösche ich Einträge per Rechtsklick.
    Nun ist das Problem, dass immer wenn ich Rechtsklick mache auf einen Eintrag oder in die leere ListBox, dann kommt ein Kontextmenu "Entfernen".

    Ich würde gerne das Kontextmenu in der ListBox deaktivieren.
    Wie mache ich das?

    VB.NET-Quellcode

    1. Private Sub ListBox_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListBox.MouseDown
    2. If e.Button = Windows.Forms.MouseButtons.Right Then
    3. If ListBox.SelectedIndex > -1 Then
    4. ListBox.Items.RemoveAt(ListBox.SelectedIndex)
    5. End If
    6. End If
    7. End Sub
    8. Private Sub ListBox_KeyDown(sender As Object, e As KeyEventArgs) Handles ListBox.KeyDown
    9. If e.KeyCode = Keys.Delete Then
    10. Dim itemsToRemove As New List(Of String)()
    11. For Each selectedItem As String In ListBox.SelectedItems
    12. itemsToRemove.Add(selectedItem)
    13. Next
    14. ' Entferne die Elemente aus der ListBox
    15. For Each item As String In itemsToRemove
    16. ListBox.Items.Remove(item)
    17. Next
    18. End If
    19. End Sub
    Bilder
    • Screenshot_10.png

      1,55 kB, 207×152, 38 mal angesehen
    Eine ListBox hat von Haus aus kein ContextMenu. Entferne es, da Du es offensichtlich selbst gesetzt hast. Wähle also im Designer die ListBox an, gehe in das Fenster Eigenschaften und lösche dort den gesetzten Eintrag bei ContextMenuStrip.
    Bilder
    • LB CMS.png

      9,82 kB, 443×228, 14 mal angesehen
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.