Hallo zusammen, ich habe aktuell das Problem, dass ich beim Füllen einer Treeview immer wieder die Fehlermeldung bekomme:
Jedoch kann ich mir nicht erklären, dass ich die Auflistung irgendwie, oder in irgendeiner Form ändere.
Meine Treeview bereite ich wie folgt auf:
Hat jemand von Euch eine Idee?
Ein Node mit x Children wird gesetzt, beim zweiten Node + Children steigt er aus.
Code:
Die Auflistung wurde geändert; möglicherweise wurde die Enumeration nicht ausgeführt.
Jedoch kann ich mir nicht erklären, dass ich die Auflistung irgendwie, oder in irgendeiner Form ändere.
Meine Treeview bereite ich wie folgt auf:
Code:
private void FillTreeView()
{
TreeNode root = (treeView1.Nodes[0].Name == "Bibliothek" ? treeView1.Nodes[0] : treeView1.Nodes.Add("Bibliothek"));
root.EnsureVisible();
root.TreeView.Focus();
root.TreeView.Select();
DataSet dsCDs = LoadData("SELECT DISTINCT ID, Name FROM CDs ORDER BY Name");
try
{
foreach (DataRow rowCD in dsCDs.Tables[0].Rows)
{
int cdID = Convert.ToInt32(rowCD["ID"]);
TreeNode childRoot = new TreeNode(rowCD["Name"].ToString());
root.Nodes.Add(childRoot);
childRoot.ImageIndex = 1;
childRoot.SelectedImageIndex = 1;
childRoot.Parent.Expand();
DataSet dsTracks = LoadData("SELECT Title, Artist, Nr FROM Tracks WHERE FK_CDs_ID = " + cdID + " ORDER BY Nr");
foreach (DataRow rowTrack in dsTracks.Tables[0].Rows)
{
TreeNode childCD = new TreeNode("#" + rowTrack["Nr"].ToString() + " " + rowTrack["Artist"].ToString() + " - " + rowTrack["Title"].ToString());
childRoot.Nodes.Add(childCD);
childCD.ImageIndex = 2;
childCD.SelectedImageIndex = 2;
}
dsTracks.Dispose();
}
dsCDs.Dispose();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
}
Hat jemand von Euch eine Idee?
Ein Node mit x Children wird gesetzt, beim zweiten Node + Children steigt er aus.
Zuletzt bearbeitet: