【发布时间】:2017-09-12 01:53:30
【问题描述】:
我是 C# 和 ASP.NET 方面的新手,我有这个任务,需要为数据库中的所有元素显示 TreeView(父子)。
我在 Default.aspx.cs 中编写了这段代码,它确实显示了根(第一父母),但我不能得到任何孩子。你能帮我解决这个问题吗? 提前致谢。
代码如下:
namespace HierarchyApp
{
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Populate_List();
}
}
private void Populate_List()
{
List<Hierarchy_Table> All_Items = new List<Hierarchy_Table>();
using (Hierarchy_DBEntities dc = new Hierarchy_DBEntities())
{
All_Items = dc.Hierarchy_Table.ToList();
}
CreateHierarchy(0, null, All_Items);
}
private void CreateHierarchy(int Parent_ID, TreeNode Parent, List<Hierarchy_Table> database_source)
{
List<Hierarchy_Table> new_database_source = database_source.Where(x => x.PARENT_ID.Equals(Parent_ID)).ToList();
foreach (var item in new_database_source)
{
TreeNode newItem = new TreeNode(item.NAME, item.ID.ToString());
if (Parent == null)
{
Hierarchy_Menu.Nodes.Add(newItem);
}
else
{
{
Parent.ChildNodes.Add(newItem);
}
CreateHierarchy(item.ID, newItem, database_source);
}
}
}
}
}
【问题讨论】:
标签: c# asp.net web-applications webforms