【发布时间】:2015-09-30 01:39:58
【问题描述】:
我在 html 页面上创建了菜单 "Home""About Us",我希望通过 c# 代码从数据库中创建 Home 和 About us 的子菜单。如何做到这一点?
【问题讨论】:
我在 html 页面上创建了菜单 "Home""About Us",我希望通过 c# 代码从数据库中创建 Home 和 About us 的子菜单。如何做到这一点?
【问题讨论】:
您需要在数据库中创建一个表来存储MenuItems。然后将 ASP.NET Menu 控件放在页面中:
<asp:Menu ID="menuBar" runat="server" Orientation="Horizontal" Width="100%">
</asp:Menu>
在后面的代码中:
DataTable dt = new DataTable();
//your sql code to fill dt
DataRow[] drowpar = dt.Select("ParentID=" + 0);
foreach (DataRow dr in drowpar)
{
menuBar.Items.Add(new MenuItem(dr["MenuName"].ToString(),
dr["MenuID"].ToString(), "",
dr["MenuLocation"].ToString()));
}
foreach (DataRow dr in dt.Select("ParentID >" + 0))
{
MenuItem mnu = new MenuItem(dr["MenuName"].ToString(),
dr["MenuID"].ToString(),
"", dr["MenuLocation"].ToString());
menuBar.FindItem(dr["ParentID"].ToString()).ChildItems.Add(mnu);
}
阅读来自 codeproject 的 this 文章可能会对您有所帮助。
【讨论】: