1
私はC#とASP.NETのことで初めてです。データベースのすべての要素に対してTreeView(親子)を表示する必要がある。APS.NET WebFormsでは、すべてのツリーノートを表示することができません
私はこのコードを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);
}
}
}
}
}