@destiny: sry, das ich deinen Thread dazu missbrauche
Hi,
die Idee mit der Filmdatenbank hat mir gefallen, also ich hab gleich mal ein bisschen ausprobiert.
Hab auf der Form 2 Buttons ein listview und eine richTextbox.
Button 1 erstellt 1000 ListViewItems + je 2 dazugehörige ListViewSubitems.
Das ganze wird dann der richTextBox und dem listView hinzugefügt.
Code:
for (int i = 0; i < 1000; i++)
{
ListViewItem Titel = new ListViewItem("Titel " + i);
ListViewItem.ListViewSubItem Genre = new ListViewItem.ListViewSubItem(Titel, "Genre " + i);
ListViewItem.ListViewSubItem Medium = new ListViewItem.ListViewSubItem(Titel, "Medium " + i);
Titel.SubItems.Add(Genre);
Titel.SubItems.Add(Medium);
listView1.Items.Add(Titel);
richTextBox1.AppendText(Titel.Text + "\n" + Genre.Text + "\n" + Medium.Text + "\n\n");
string titel = Titel.Text, genre = Genre.Text, medium = Medium.Text;
mdbitems += titel + "|" + genre + "|" + medium + ";";
}
Danach wird der ganze Inhalt entsprechend formatiert (s. letzte Codezeile v. oben) als Textdatei gespeichert.
In der Datei ist dann alles wie es sein soll:
Code:
Titel 0|Genre 0|Medium 0;Titel 1|Genre 1|Medium 1;Titel 2|Genre 2|Medium 2;Titel 3|Genre 3|Medium 3;Titel 4|Genre 4|Medium 4;Titel 5|Genre 5|Medium 5;Titel 6|Genre 6|Medium 6;Titel 7|Genre 7|Medium 7;Titel 8|Genre 8|Medium 8;Titel 9|Genre 9|Medium 9;Titel 10|Genre 10|Medium 10;Titel 11|Genre 11|Medium 11;Titel 12|Genre 12|Medium 12;Titel 13|Genre 13|Medium 13;Titel 14|Genre 14|Medium 14;
Mit Button2 wird der Inhalt wieder eingelesen und gespalten, sodass ich am Ende wieder 1000 ListViewItems habe.
Theoretisch sollte dann alles (wie schon beim Speichern) der richTextBox und dem listView angehängt werden.
Code:
TextDatei TD = new TextDatei();
try
{
mdbitems = TD.ReadFile(@"D:\list.mdb.txt");
}
catch (Exception exc)
{
MessageBox.Show(exc.Message);
}
string[] ItemSplit = mdbitems.Split(';');
string[] SubItemSplit;
for (int i = 0; i < ItemSplit.Length-1; i++)
{
SubItemSplit = ItemSplit[i].Split('|');
ListViewItem Titel = new ListViewItem(SubItemSplit[0]);
ListViewItem.ListViewSubItem Genre = new ListViewItem.ListViewSubItem(Titel, SubItemSplit[1]);
ListViewItem.ListViewSubItem Medium = new ListViewItem.ListViewSubItem(Titel, SubItemSplit[2]);
Titel.SubItems.Add(Genre);
Titel.SubItems.Add(Medium);
listView1.Items.Add(Titel);
richTextBox1.AppendText(Titel + "\n" + Genre + "\n" + Medium + "\n\n");
}
In der richTextBox steht jetzt alles wie gewohnt drin, aber dem listView werden 1000 leere Zeilen angefügt
Findet jemand den Fehler?