关于Menu控件的数据绑定问题
数据源是张表:
想得到如下的菜单:
问题就是在
- HTML code
<asp:menu id="NavigationMenu" disappearafter="1000" staticdisplaylevels="1" orientation="Horizontal" Font-Names="黑体" target="_blank" runat="server">
标签中可以使用DataSourceID属性进行绑定,但是我不是想整体绑定munu控件 而是在
- HTML code
<asp:menu id="NavigationMenu" disappearafter="1000" staticdisplaylevels="1" orientation="Horizontal" Font-Names="黑体" target="_blank" runat="server" DataSourceID> <staticmenuitemstyle backcolor="LightSteelBlue" forecolor="Black"/> <statichoverstyle backcolor="LightSkyBlue"/> <dynamicmenuitemstyle backcolor="#989C79" forecolor="#F6F4DB"/> <dynamichoverstyle backcolor="LightSkyBlue" forecolor="Black"/> <items> <asp:menuitem text="数据库目录"> <asp:menuitem text="华北"> <asp:menuitem navigateurl="Products.aspx?id=1" text="北汽福田" /> <asp:menuitem navigateurl="Products.aspx?id=2" text="天津雷沃" /> <asp:menuitem navigateurl="Products.aspx?id=3" text="保定长城" /> </asp:menuitem> <asp:menuitem text="华中"> <asp:menuitem navigateurl="Products.aspx?id=4" text="东风康明斯" /> <asp:menuitem navigateurl="Products.aspx?id=5" text="东风轻型" /> <asp:menuitem navigateurl="Products.aspx?id=6" text="东风49" /> </asp:menuitem> </asp:menuitem> </items> </asp:menu>
下的items中进行按地区的各个绑定
请大伙给个解决的办法
[解决办法]
void LoadMenue()
{
MenuItem item = new MenuItem();
item.Text = "根节点";
//分组得到分区集合
DataTable groupTable = new DataTable();
//所有数据
DataTable sTable = new DataTable();
for (int i = 0; i < groupTable.Rows.Count; i++)
{
DataRow row = groupTable.Rows[i];
DataRow[] rows = sTable.Select("Descn=" + row["Descn"].ToString());
for (int j = 0; j < rows.Count(); j++)
{
BindMenue(item, rows[j]);
}
}
Menu1.Items.Add(item);
}
void BindMenue(MenuItem item, DataRow row)
{
MenuItem Citem = new MenuItem();
item.Text = row["name"].ToString();
item.ChildItems.Add(Citem);
}