Benutzer mit den meisten Antworten
Listview auslesen und Bearbeiten/Updaten

Frage
-
Hey,
Heute mal wieder eine Listview Frage und zwar:
Ich habe 4 Textboxen in die jeweils werte eingetragen werden. Wenn ich dann auf einen Button drücke (button_stadtübersicht_add) werden die Werte in die Listview eingetragen. Das passt auch alles nur jetzt möchte ich gerne das wenn ich doppelt auf einen Eintrag in der Listview klicke, die 4 werte wieder in die jeweiligen Textboxen eingetragen werden und ich dort angaben ändern kann und dann auf einen Update Button drücke (button_stadtübersicht_update) und dann der jeweilige Eintrag aktualisiert wird.
Mein Code für das eintragen und löschen usw. der Listview:
//Add private void button_stadtübersicht_add_Click(object sender, EventArgs e) { if (textBox_stadtübersicht_cityname.Text != "" && textBox_stadtübersicht_function.Text != "") { ListViewItem lvi = new ListViewItem(textBox_stadtübersicht_cityname.Text); lvi.SubItems.Add(textBox_stadtübersicht_function.Text); lvi.SubItems.Add(textBox_stadtübersicht_maxed.Text); lvi.SubItems.Add(textBox_stadtübersicht_ready.Text); listView_stadtübersicht.Items.Add(lvi); } else { MessageBox.Show("Bitte alle angaben ausfüllen!", "Grepotool - Error (Fehlende Angaben)", MessageBoxButtons.OK, MessageBoxIcon.Error); } } //Remove private void button_stadtübersicht_remove_Click(object sender, EventArgs e) { if (listView_stadtübersicht.SelectedIndices.Count == 0) { MessageBox.Show("Bitte wähle ein oder mehrere Objekte zum löschen aus.", "Grepotool - Error (Fehlende Auswahl)", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { foreach (ListViewItem item in listView_stadtübersicht.SelectedItems) { item.Remove(); } } }
Antworten
-
Hallo,
das mit dem Doppelklick ist nicht ganz einfach, aber auch nicht sonderlich schwer wenn man weiß wie es geht.ListViewItem selected = null; private void listView_stadtübersicht_MouseDoubleClick(object sender, MouseEventArgs e) { ListViewHitTestInfo lvhti = listView_stadtübersicht.HitTest(e.X, e.Y);//Item anhand der Click-Kooridnaten abfragen if (lvhti != null)//Ist dort ein Item? { if (lvhti.Item != null && lvhti.SubItem != null) { selected = lvhti.Item; //Den TextBoxen die Texte zuweisen (du musst natürlich die richtigen Namen nutzen) textBox1.Text = selected.SubItems[0].Text; textBox2.Text = selected.SubItems[1].Text; textBox3.Text = selected.SubItems[2].Text; textBox4.Text = selected.SubItems[3].Text; } } } private void button2_Click(object sender, EventArgs e) { //Daten zurück speichern -> Update selected.SubItems[0].Text = textBox1.Text; selected.SubItems[1].Text = textBox2.Text; selected.SubItems[2].Text = textBox3.Text; selected.SubItems[3].Text = textBox4.Text; }
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort vorgeschlagen Aleksander Chalabashiev Dienstag, 7. April 2015 14:57
- Als Antwort markiert Aleksander Chalabashiev Freitag, 10. April 2015 09:48
Alle Antworten
-
Hallo,
das mit dem Doppelklick ist nicht ganz einfach, aber auch nicht sonderlich schwer wenn man weiß wie es geht.ListViewItem selected = null; private void listView_stadtübersicht_MouseDoubleClick(object sender, MouseEventArgs e) { ListViewHitTestInfo lvhti = listView_stadtübersicht.HitTest(e.X, e.Y);//Item anhand der Click-Kooridnaten abfragen if (lvhti != null)//Ist dort ein Item? { if (lvhti.Item != null && lvhti.SubItem != null) { selected = lvhti.Item; //Den TextBoxen die Texte zuweisen (du musst natürlich die richtigen Namen nutzen) textBox1.Text = selected.SubItems[0].Text; textBox2.Text = selected.SubItems[1].Text; textBox3.Text = selected.SubItems[2].Text; textBox4.Text = selected.SubItems[3].Text; } } } private void button2_Click(object sender, EventArgs e) { //Daten zurück speichern -> Update selected.SubItems[0].Text = textBox1.Text; selected.SubItems[1].Text = textBox2.Text; selected.SubItems[2].Text = textBox3.Text; selected.SubItems[3].Text = textBox4.Text; }
Tom Lambert - .NET (C#) MVP
Wozu Antworten markieren und für Beiträge abstimmen? Klicke hier.
Nützliche Links: .NET Quellcode | C# ↔ VB.NET Konverter | Account bestätigen (Verify Your Account)
Ich: Webseite | Code Beispiele | Facebook | Twitter | Snippets- Als Antwort vorgeschlagen Aleksander Chalabashiev Dienstag, 7. April 2015 14:57
- Als Antwort markiert Aleksander Chalabashiev Freitag, 10. April 2015 09:48
-
Hallo CaptainSikay,
ist der Thread noch aktuell?
Gruß
Aleksander
Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „IT-Pros helfen IT-Pros“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.