So verwende ich C# in einer Windows Forms-Anwendung und meine Frage hier ist über die ListView. Ich möchte das ListViewItem nur in einer bestimmten Farbe anzeigen, abhängig vom Wert. Jetzt habe ich die traditionelle Methode der versucht:Kann ListViewItem nicht in Farbe anzeigen
ListViewItem li = new ListViewItem();
li.ForeColor = Color.Green;
li.Text = "Limit: " + wc.getCreditLimit();
listLimits.Items.Add(li);
Aber das Ergebnis, das ich in der Listview zu sehen ist:
ListViewItem: {Limit: 15000}
Und nein, es ist nicht farbig
Eine andere Methode, die ich versuchte, war, das ListViewItem mit Text als ein Argument wie folgt zu initialisieren:
ListViewItem li = new ListViewItem("Limit: " + wc.getCreditLimit());
li.ForeColor = Color.Green;
listLimits.Items.Add(li);
Aber das erzeugt auch das gleiche Ergebnis wie zuvor.
Eine andere Methode habe ich versucht war, die Eigenschaft Text des ListViewItem wie so do:
im ListviewListViewItem li = new ListViewItem("Limit: " + wc.getCreditLimit());
li.ForeColor = Color.Green;
listLimits.Items.Add(li.Text);
Nun ist diese zeigt den richtigen Text, Es ist jedoch noch nicht gefärbt!
Kann jemand bitte dieses seltsame Verhalten erklären, denn von dem, was ich gelesen habe, sieht es so aus, als ob dies der einzige Ansatz zum Hinzufügen von Farbe zu einem ListViewItem ist. Jeder Rat würde geschätzt werden, danke.
Beifall für die Down-Abstimmung ... nun, wenn jemand versuchen könnte eher zu helfen als zu kritisieren das wäre toll! –
Laut [dieser] (http://stackoverflow.com/q/3400146/1997232) hast du es richtig gemacht. Ich vermute einen üblichen * Benutzerfehler *, vielleicht ist 'ListView' nicht im' Details' Modus oder etwas anderes. Für * "sieht es so aus, als wäre dies der einzige Ansatz, um einem ListViewItem Farbe hinzuzufügen" * Sie sind falsch, es gibt andere * Ansätze *: 1) WPF 2) [Eigentümer gezeichnet] (http://stackoverflow.com/q/9066408/1997232) ListView 3) Drittanbieterkomponente. – Sinatr