I have a simple WPF application with a menu. I need to add menu items dynamically at runtime. When I simply create a new menu item, and add it onto its parent MenuItem, it
ASP.NET -> WEB Forms -> Create Menu
CREATE TABLE `webmenu` (
`idmenu` smallint(5) NOT NULL,
`submenu` smallint(5) DEFAULT NULL,
`menu_title` varchar(45) DEFAULT NULL,
`menu_url` varchar(45) DEFAULT NULL,
`status` enum('1','0') DEFAULT '1',
PRIMARY KEY (`idmenu`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SELECT
idmenu,
(select menu_title from webmenu where idmenu=wm.submenu and status='1') as childmenu,
menu_title,
menu_url
FROM tartyp.webmenu as wm
where
status='1'
order by idmenu, submenu;
cmd = new MySql.Data.MySqlClient.MySqlCommand(queryStr, conn);
reader = cmd.ExecuteReader();
MainMenu.Items.Clear();
while (reader.Read())
{
if (reader["childmenu"] == DBNull.Value)
{
MenuItem homeMenuItem = new MenuItem(reader["menu_title"].ToString(), reader["menu_url"].ToString());
MainMenu.Items.Add(homeMenuItem);
}
else
{
String childmenu = reader["childmenu"].ToString();
for (int i = 0; i < MainMenu.Items.Count; i++)
{
if (MainMenu.Items[i].Text == childmenu)
{
MenuItem childMenuItem = new MenuItem(reader["menu_title"].ToString(), reader["menu_url"].ToString());
MenuItem findMenuItem = MainMenu.Items[i];
findMenuItem.ChildItems.Add(childMenuItem);
break;
}
}
}
}
reader.Close();
conn.Close();