Visual basic 2008 Listbox Item ändern

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von MediaXtremely.

    Visual basic 2008 Listbox Item ändern

    Hallo,
    ich habe ein Problem mit der Listbox.

    Wie kann ich Items in die Listbox hinzufügen, so das der Pfad bis zur Datei bleibt, aber ein anderer Name angezeigt wird?

    So:
    C:\Test.mp3 = Test

    Kann ich das mit der Listbox machen?

    MediaXtremely schrieb:

    Kann ich das mit der Listbox machen?
    Nein. Ich würde dir eine ListView empfehlen. Da gibt es eine Eigenschaft die sich "Tag" nennt.

    Beispiel:

    VB.NET-Quellcode

    1. Listview1.Items.Add("Skrillex - Scary Monsters And Nice Sprites").Tag = "C:\DeinWeitererPfad\Skrillex_Monster.mp3"

    BTW: Falls du es mit einer ListView machst, must du zuerst noch eine Column erstellen (Name egal) und ebenfalls in den Eigenschaften den "Headerstyle" auf "None" und die "View" auf "Details" umstellen.

    Mfg Dancger
    MESS WITH THE BEST, DIE LIKE THE REST! :evil:
    n'paar Links: DNS Tools, Steal WA DB, Droidsheep...

    MediaXtremely schrieb:

    Ich meine, selecteditem gibt es bei Listview nicht oder?
    Nein. Es gibt nur SelectedItems.

    Wenn du möchtest, dass nur ein Lied auswählbar ist, stelle die Eigenschaft "MultiSelect" auf "False". Dann kannst du das Item über ListView1.SelectedItems(0) ansprechen.

    VB.NET-Quellcode

    1. ListView1.SelectedItems(0) 'Falls mehrere Lieder markiert sind, ist 0 das erste, 1 das zweite u.s.w. [Ich würde MultiSelect auf FALSE stellen]
    2. ListView1.SelectedItems(0).Tag 'Liefert dir den Pfad, wenn du mein Beispiel von oben verwendest

    Mfg Dancger
    MESS WITH THE BEST, DIE LIKE THE REST! :evil:
    n'paar Links: DNS Tools, Steal WA DB, Droidsheep...
    Also ich kann das Lied abspielen, aber nicht laden.
    Das laden ist wichtig. Ich denke das mit der Listview kann ich vergessen.

    Ich kann Audio Datei = New Audio () mit Listview nicht anwenden, weil System.Windows.Form.ListView.SelectedListviewItemCollection nicht in String konvertiert werden kann.

    Schade..

    Danke für eure Hilfe....
    "Collection" in "ListViewItemCollection" sagt uns, dasses sich um eine Collection handelt - zu deutsch: um eine Auflistung.
    Noch deutscher: Es sind also mehrere Items darin, und zwar bei einer ListViewItemCollection wird es sich um ListViewItems handeln.

    Normalerweise in der Praxis ist in ListView.SelectedItems nur ein Item drinne, oder aber keines, je nachdem, ob was angewählt wurde oder nicht, und in welchem SelectionMode.

    Aber ListView zu vergessen ist eh eine gute Idee.
    Weil DataGridView ist in allen Punkten besser.
    Wenn du dich gar herbeilassen könntest, eine typisierte DataTable anzulegen, dann könntest du Databinding verwenden, und das selektierte Item immer aus BindingSource.Current auspuhlen, und bräuchtest somit gar nimmer auf den Controls herumzuhühnern.

    gugge etwa Most Primitive
    hehe...
    Ich möchte ja eine Wiedergabeliste machen, so das wenn ein Lied endet das nächste abgespielt wird und bei jeden Klick auf das Item.
    So das habe ich ja schon geschafft, aber mit der Listbox!

    Mir fehlt nur noch, dass da nicht der Pfad drin steht, sondern der Dateiname. Mehr möchte ich nicht.

    Mit DataGridView habe ich keine erfahrung.

    Danke für eure Hilfe....
    Entweder (oder besser) machst du dich daran dich mit DataGridViews zu beschäftigen, oder du liest meinen Post nochmals, verstehst ihn und setzt ihn um (Nicht so schön wie der Vorschlag von ErfinderDesRades, aber würde mit einer Abänderung von ca. 2 oder 3 Zeilen funktionieren).

    Mfg Dancger
    MESS WITH THE BEST, DIE LIKE THE REST! :evil:
    n'paar Links: DNS Tools, Steal WA DB, Droidsheep...
    Ich habe es geschafft mit Listview Items anzuklicken und abzuspielen etc..

    Nur wenn ich das Item mit einem Tag setzte passiert nix.

    Edit:

    Ich habe es geschafft!!!

    Ich habe immer ListView1.FocusedItem.Text genommen, aber das war falsch. Ich muss ListView1.FocusedItem.Tag nehmen, dann klappt alles.


    Ich bedanke mich ganz dolle für eure Hilfe...Man sollte auch ein bisschen das Köpfchen anstrengen.hehe

    Code: zum abspielen und Audio Dateien mit Directx und Listview

    VB.NET-Quellcode

    1. Audiodatei = New Audio(ListView1.FocusedItem.Tag)
    2. Audiodatei.Play()
    3. Audiodatei.CurrentPosition = 0
    4. Audiodatei.Volume = TrackBar1.Value


    Nochmals vielen Dank.

    MfG MediaXtremely

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „MediaXtremely“ ()