Matrix einlesen
-
Hallo
Ist es möglich über eine listview eine Matrix eingeben?
Dazu gibt man erst Spalten und Zeilen ein und in einer listview wird eine Matrix erzeugt.
Hier der Code dazu:private void CreateMatrix() { listView1.Items.Clear(); listView1.LabelEdit = false; listView1.AllowColumnReorder = true; listView1.FullRowSelect = false; listView1.GridLines = true; listView1.Sorting = SortOrder.Ascending; listView1.CheckBoxes = false; listView1.View = View.Details; int zeilen =Convert.ToInt32(textBox1.Text); int spalten =Convert.ToInt32(textBox2.Text); ListViewItem[] item = new ListViewItem[zeilen]; listView1.Columns.Add("", -2, HorizontalAlignment.Left); // Eckelement for (int i = 0; i < spalten ; i++) // KopfZeile { listView1.Columns.Add((i+1).ToString(), -2, HorizontalAlignment.Left); } for (int i = 0; i < zeilen ; i++) { item[i]= new ListViewItem( (i+1).ToString()); for (int j = 0; j < spalten ; j++) { item[i].SubItems.Add(""); } listView1.Items.Add(item[i]); } }
In die leeren Felder kann ich aber nichts schreiben.Geht das Überhaupt?
Und wennn diese Methode nicht geht, wie macht man das effizenter?
-
Bei einer ListView kann nur die erste Spalte editiert werden (wie beim Windows Explorer). Benutze ein DataGridView stattdessen (und dann am besten gleich per DataBinding, z.B. mittels einer DataTable).
-
Danke für die Antwort. Jetzt habe ich ein Grund mich mit databinding zu befassen.