我需要从数据库数据中填充树视图,如下所示:
A
- abc 1
- def 2
- fed 1
- cbd 2
B
- ghi 1
- ihjg 1
有三张桌子。一个包括 - 让我们说'祖父母' - 数据,第二个用于'父母'数据,第三个用于'孙子'数据
目前我已设法为“祖父母”和“父母”加载数据:
private void PopulateTreeView()
{
try
{
DataTable dtProjekti = objDB.dbGetTable("SELECT * FROM tblProjekti");
DataTable dtAktivnosti = objDB.dbGetTable("SELECT * FROM tblAktivnosti");
DataSet ds = new DataSet();
ds.Tables.Add(dtProjekti);
ds.Tables.Add(dtAktivnosti);
ds.Relations.Add("childrens", dtProjekti.Columns["OznakaProjekta"], dtAktivnosti.Columns["OznakaProjekta"]);
if (ds.Tables[0].Rows.Count > 0)
{
treeProjekti.Nodes.Clear();
foreach (DataRow masterRow in ds.Tables[0].Rows)
{
TreeNode masterNode = new TreeNode(masterRow["OznakaProjekta"].ToString(), 0, 1);
treeProjekti.Nodes.Add(masterNode);
foreach (DataRow childRow in masterRow.GetChildRows("childrens"))
{
TreeNode childNode = new TreeNode(childRow["NazivAktivnosti"].ToString());
masterNode.Nodes.Add(childRow["IdAkt"].ToString(), childRow["NazivAktivnosti"].ToString(), 0, 1);
}
}
}
}
catch (Exception ex)
{
throw new Exception("Unable to populate treeview" + ex.Message);
}
但我不明白如何将第三张桌子上的孙子孙女添加到家长身上。 父和孙与表字段ID以1:N关系链接。