C# 从数据库C填充TreeView#
我在数据库中有两个关系为1:N的表,我想用数据填充treeview。问题是如何将子对象添加到每个父对象。这是我的代码:C# 从数据库C填充TreeView#,c#,database,treeview,C#,Database,Treeview,我在数据库中有两个关系为1:N的表,我想用数据填充treeview。问题是如何将子对象添加到每个父对象。这是我的代码: private void PopulateTreeView() { try { DataTable dtProjekti = objDB.dbGetTable("SELECT * FROM tblProjekti"); DataTable dtAktivnosti = objDB.dbGetTable("
private void PopulateTreeView()
{
try
{
DataTable dtProjekti = objDB.dbGetTable("SELECT * FROM tblProjekti");
DataTable dtAktivnosti = objDB.dbGetTable("SELECT * FROM tblprojektakt");
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)
{
treeView1.Nodes.Clear();
foreach (DataRow masterRow in ds.Tables[0].Rows)
{
//TreeNode masterNode = new TreeNode((string)masterRow["ParentName"], Convert.ToString(masterRow["ParentId"]));
TreeNode masterNode = new TreeNode(masterRow["OznakaProjekta"].ToString());
treeView1.Nodes.Add(masterNode);
foreach (DataRow childRow in masterRow.GetChildRows("Children"))
{
// missing code for adding childs to each parent
}
}
}
}
catch (Exception ex)
{
throw new Exception("Unable to populate treeview" + ex.Message);
}
}
}
child是字段描述中的值
我知道如何手动将子项添加到每个父项,但我不知道它应该是动态的
child是字段描述中的值
如果您指的是列说明
。应该是这样的:
foreach (DataRow childRow in masterRow.GetChildRows("Children"))
{
masterNode.Nodes.Add(new TreeNode(childRow["Description"].ToString()));
}