Problem gelöst... ich Idiot hatte den DrawMode falsch gesetzt habe
Lösung: ListBox1.DrawMode = DrawMode.OwnerDrawVariable
statt: ListBox1.DrawMode = DrawMode.OwnerDrawFixed
Tut mir leid Leute, erst denken, dann Thread eröffnen.
Ursprünglicher Thread im Spoiler unten.
Spoiler anzeigen
Lösung: ListBox1.DrawMode = DrawMode.OwnerDrawVariable
statt: ListBox1.DrawMode = DrawMode.OwnerDrawFixed
Tut mir leid Leute, erst denken, dann Thread eröffnen.
Ursprünglicher Thread im Spoiler unten.
Hallo Leute,
gibt es eine Möglichkeit DrawItem ohne das Event auszuführen?
Hier der Event Code:
Mein Ansatz ohne Event:
Der obige Code funktioniert ohne DrawEvent nicht.
Gibt es da einen Weg das ohne Event hin zu bekommen?
Das Problem an der Sache ist, dass ich die ListBox per Schleife befülle und das Event jedes mal ausgeführt wird.
Am Ende habe ich dann lauter Rote Strings die irgendwo im nirgendwo hängen.
gibt es eine Möglichkeit DrawItem ohne das Event auszuführen?
Hier der Event Code:
VB.NET-Quellcode
- Private Sub ListBox1_DrawItem(sender As Object, e As DrawItemEventArgs) Handles ListBox1.DrawItem
- e.DrawBackground()
- Dim g As Graphics = e.Graphics
- Dim br_1 As Brush = Brushes.Black
- Dim br_2 As Brush = Brushes.Red
- g.FillRectangle(New SolidBrush(Color.White), e.Bounds)
- e.Graphics.DrawString(ListBox1.Items(e.Index).ToString(), e.Font, br_1, e.Bounds, StringFormat.GenericDefault)
- For i As Integer = 0 To ListBox1.Items.Count - 1
- If ListBox1.Items(i).ToString().Contains("nicht") Then
- e.Graphics.DrawString(ListBox1.Items(i).ToString(), e.Font, br_2, e.Bounds, StringFormat.GenericDefault)
- End If
- Next i
- e.DrawFocusRectangle()
- End Sub
Mein Ansatz ohne Event:
VB.NET-Quellcode
Der obige Code funktioniert ohne DrawEvent nicht.
Gibt es da einen Weg das ohne Event hin zu bekommen?
Das Problem an der Sache ist, dass ich die ListBox per Schleife befülle und das Event jedes mal ausgeführt wird.
Am Ende habe ich dann lauter Rote Strings die irgendwo im nirgendwo hängen.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Petersilie“ ()