bestimmtes Listbox Item färben aber nur wenn es einen Bestimmten Text enthält!

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Cr4ckY.

    bestimmtes Listbox Item färben aber nur wenn es einen Bestimmten Text enthält!

    Hey vb-Paradise,

    Ich möchte ein bestimmtes Listbox Item einfärben aber nur wenn es den Text: "test" enthält
    das Problem ist ich hab nichts gefunden mit Listbox1.Items.Contains("test") ...
    das nächstes wäre das die Listbox Items immer abundzu geaddet werden ...
    und er soll aber nur immer den Teil mit "test" einfärben der Rest ist normal..

    Hab schon google gefragt uund selbst rumprobiert aber hab keine AHnung wie ich das machen könnte...

    hab das gefunden: vbarchiv.net/tipps/tipp_1106-c…mten-eintrag-pruefen.html
    das hilft mir auch, teilweise
    das brauch ich aber eben nicht so ganz .. :D


    Mfg. <--
    Falls möglich könntest du anstatt der ListBox eine ListView nehmen und folgende Schleife benutzen:

    VB.NET-Quellcode

    1. For i As Integer = 0 To ListView1.Items.Count - 1
    2. If ListView1.Items.Item(i).Text = "test" Then
    3. ListView1.Items.Item(i).ForeColor = Color.Green
    4. End If
    5. Next


    Also die For-Schleife durchläuft erstmal jedes Item in der ListView und dann wird geprüft, welches davon den Text "test" enhält und gibt ihm dann die Schriftfarbe Grün.

    Unterschiede zwischen ListView und ListBox sieht man eh nicht, du kannst ja auch den ColumnHeader verstecken, indem du "HeaderStyle" auf None stellst.
    Das hab ich schon angeschaut...


    @Cr4ckY:
    naja würde ja Listview nehmen aber ich check nicht wie ich die so mache das die automatisch runterscrollt wenn ein Item geaddet wird.
    bei ner listbox wäre das: Listbox1.SelectedIndex = listbox1.Items.COunt - 1
    aber das geht bei ner Listview nicht.
    Jedes mal, wenn du irgendwas hinzufügst, benutzt die EnsureVisible. Also z.B.:

    VB.NET-Quellcode

    1. For i As Integer = 0 To 99
    2. ListView1.Items.Add("Item" & i)
    3. Next
    4. ListView1.EnsureVisible(ListView1.Items.Count - 1)


    Es werden 100 Einträge hinzugefügt und danach zum letzten Item gescrollt.