Autor Beitrag
NostrA90
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Sa 18.04.09 19:44 
Guten Abend,
Hab da gerade ein Problem, und zwar möchte ich Items einer Listbox hinzufügen, diesen Items möchte ich gerne eine Farbe bzw. Forecolor zuweisen. Mein Buch und Google weiß keinen Rat (bestimmt such ich mal wieder unter den falschen Befehlen :/ ).

Also im Endeffekt möchte ich eine Listbox erstellen die nach hinzufügen der Items (während das Programm läuft) in etwa so aussieht wie im Anhang.

(Sorry für meine Unwissenheit aber arbeite mich erst seit kurzem in C# ein)

Danke im vorraus für eure Hilfe

MFG Nostra90
Einloggen, um Attachments anzusehen!
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Sa 18.04.09 20:06 
Hi!

Dazu musst Du in WinForms die Items leider selber zeichnen. Um das zu tun setzt Du den DrawMode der Listbox auf OwnerDrawFixed und reagierst dann auf das DrawItem-Event der Listbox.

In dem Event kannst Du z.B. das hier machen:
ausblenden Delphi-Prism-Quelltext
1:
2:
3:
  e.DrawBackground;
  e.Graphics.DrawString(ListBox(sender).Items[e.Index].ToString, e.Font, Brushes.Beige, e.Bounds.Left, e.Bounds.Top);
  e.DrawFocusRectangle;

Das würde alles in Beige zeichnen, die Farbe kannste natürlich machen wie Du willst ;-)

(Der Quellcode ist kein C#, geht da aber genauso)

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".
JüTho
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2021
Erhaltene Danke: 6

Win XP Prof
C# 2.0 (#D für NET 2.0, dazu Firebird); früher Delphi 5 und Delphi 2005 Pro
BeitragVerfasst: Di 21.04.09 12:39 
Hallo,

für solche Anforderungen ist übrigens CodeProject eine gute Adresse. (Alle dort vorgestellten Lösungen benutzen übrigens Christians Verfahren; du kannst auch Lösungen für ComboBox verwenden, das geht genauso.)

Gruß Jürgen