Benutzer mit den meisten Antworten
ListView

Frage
-
Hallo Leute,
ich habe 4 Listen, jede Liste soll in einer Spalte der ListView stehen. Wie mache ich das??
Also filter in Filterspalte und sum in Summe?
danke im Vorauspublic partial class Form2 : Form { public List<String> filter; public List<String> count;
public Form2(Dictionary<String, List<String>> f_filters, List<String>s_count, List<String>s_sum, List<String>s_distinct, List<String>s_groupBy) { InitializeComponent(); filters = f_filters; count = s_count; } private void Form2_Load(object sender, EventArgs e) { listView1.View = View.Details; listView1.GridLines = true; listView1.FullRowSelect = true; //Add column header listView1.Columns.Add("Summe", 150); listView1.Columns.Add("Filter", 150);
listView1.Columns.Add("Endergebnis", 150);
}
Antworten
-
Die erste Spalte is ein Item, nicht ein SubItem.
List<String> l = new List<String> { "Test", " 2Test", "3Test" }; List<String> al = new List<String> { "Test", "2Test", "3Test" }; List<String> bl = new List<String> { "Test", "2Test", "3Test"}; List<String> cl = new List<String> { "Test", "2Test", "3Test"}; ListViewItem item1 = new ListViewItem("Hallo1"); ListViewItem item2 = new ListViewItem("Hallo1"); ListViewItem item3 = new ListViewItem("Hallo1"); ListViewItem item4 = new ListViewItem("Hallo1"); for (int i = 0; i < 3; i++) { item1.SubItems.Add(l[i]); item2.SubItems.Add(al[i]); item3.SubItems.Add(bl[i]); item4.SubItems.Add(cl[i]); }
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 26. Oktober 2012 09:55
-
Hi,
ungetestet habe ich mal folgendes gemacht :
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void FillListView() { List<MyObject> objects = new List<MyObject>(){new MyObject(){ValueA = "A",ValueB = "B",ValueC = "C",ValueD = "D"}}; listView1.Columns.Add("Auswahl", 150); listView1.Columns.Add("Filter", 150); listView1.Columns.Add("Gruppierung", 150); listView1.Columns.Add("Resultat", 150); foreach (var o in objects) { var sub = new ListViewItem(); sub.SubItems.Add(o.ValueA); sub.SubItems.Add(o.ValueB); sub.SubItems.Add(o.ValueC); sub.SubItems.Add(o.ValueD); listView1.Items.Add(sub); } } } internal class MyObject { public string ValueA { get; set; } public string ValueB { get; set; } public string ValueC { get; set; } public string ValueD { get; set; } }
Grüße
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 26. Oktober 2012 09:55
Alle Antworten
-
Hallo;
in der ersten Spalte wird nichts eingefügt. Wisst ihr wie man das macht?
private void Form1_Load(object sender, EventArgs e) { listView1.View = View.Details; listView1.GridLines = true; listView1.FullRowSelect = true; List<String> l = new List<String> { "Hallo1", "Test", " 2Test", "3Test" }; List<String> al = new List<String> { "Hallo1", "Test", "2Test", "3Test" }; List<String> bl = new List<String> { "Hallo1", "Test", "2Test", "3Test"}; List<String> cl = new List<String> { "Hallo1", "Test", "2Test", "3Test"}; ListViewItem item1 = new ListViewItem(); ListViewItem item2 = new ListViewItem(); ListViewItem item3 = new ListViewItem(); ListViewItem item4 = new ListViewItem(); for (int i = 0; i < 4; i++) { item1.SubItems.Add(al[i]); item2.SubItems.Add(al[i]); item3.SubItems.Add(bl[i]); item4.SubItems.Add(cl[i]); } //Add column header listView1.Columns.Add("Auswahl", 150); listView1.Columns.Add("Filter", 150); listView1.Columns.Add("Gruppierung", 150); listView1.Columns.Add("Resultat", 150); listView1.Items.AddRange(new ListViewItem[] { item1, item2, item3, item4 }); this.Controls.Add(listView1); }
danke im Voraus! -
Die erste Spalte is ein Item, nicht ein SubItem.
List<String> l = new List<String> { "Test", " 2Test", "3Test" }; List<String> al = new List<String> { "Test", "2Test", "3Test" }; List<String> bl = new List<String> { "Test", "2Test", "3Test"}; List<String> cl = new List<String> { "Test", "2Test", "3Test"}; ListViewItem item1 = new ListViewItem("Hallo1"); ListViewItem item2 = new ListViewItem("Hallo1"); ListViewItem item3 = new ListViewItem("Hallo1"); ListViewItem item4 = new ListViewItem("Hallo1"); for (int i = 0; i < 3; i++) { item1.SubItems.Add(l[i]); item2.SubItems.Add(al[i]); item3.SubItems.Add(bl[i]); item4.SubItems.Add(cl[i]); }
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 26. Oktober 2012 09:55
-
hallo,
danke erstmals für die Antwort!
Gibt es eigentlich auch eine andere Möglichkeit die Spalten zu füllen?
Bei mir sind es zum Teil über 100 Einträge pro Spalte. Und jedes mal eine neues ListViewItem herzustellen ( in forschleife), ist ja nicht wirklich sinnvoll oder?
Güße trap12
-
Hi,
ungetestet habe ich mal folgendes gemacht :
public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void FillListView() { List<MyObject> objects = new List<MyObject>(){new MyObject(){ValueA = "A",ValueB = "B",ValueC = "C",ValueD = "D"}}; listView1.Columns.Add("Auswahl", 150); listView1.Columns.Add("Filter", 150); listView1.Columns.Add("Gruppierung", 150); listView1.Columns.Add("Resultat", 150); foreach (var o in objects) { var sub = new ListViewItem(); sub.SubItems.Add(o.ValueA); sub.SubItems.Add(o.ValueB); sub.SubItems.Add(o.ValueC); sub.SubItems.Add(o.ValueD); listView1.Items.Add(sub); } } } internal class MyObject { public string ValueA { get; set; } public string ValueB { get; set; } public string ValueC { get; set; } public string ValueD { get; set; } }
Grüße
- Als Antwort markiert Robert BreitenhoferModerator Freitag, 26. Oktober 2012 09:55
-
Hallo trap12,
Ich gehe davon aus, dass die Antworten Dir weitergeholfen haben.
Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.Grüße,
RobertRobert Breitenhofer, MICROSOFT
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.