Código HTML:
public partial class Form2 : Form { SqlConnection conn; MenuStrip MnuStrip; ToolStripMenuItem MnuStripItem; public Form2() { InitializeComponent(); } private void Form2_Load(object sender, EventArgs e) { this.IsMdiContainer = true; MnuStrip = new MenuStrip(); this.Controls.Add(MnuStrip); String conexion = ConfigurationManager.ConnectionStrings["cn"].ConnectionString; conn = new SqlConnection(conexion); String query = "select id_menu,des_menu,id_padre from tb_menu where id_padre = 0"; SqlDataAdapter da = new SqlDataAdapter(query, conn); DataTable dt = new DataTable(); conn.Open(); da.Fill(dt); foreach (DataRow dr in dt.Rows) { MnuStripItem = new ToolStripMenuItem(); MnuStripItem.Name = dr["id_menu"].ToString(); MnuStripItem.Text = dr["des_menu"].ToString(); SubMenu(MnuStripItem); MnuStrip.Items.Add(MnuStripItem); } } public void SubMenu(ToolStripMenuItem mnu) { String query = "select id_menu,des_menu,img_menu from tb_menu where id_padre='" + mnu.Name.ToString() + "'"; SqlDataAdapter da = new SqlDataAdapter(query, conn); DataTable dt = new DataTable(); da.Fill(dt); foreach (DataRow dr in dt.Rows) { ToolStripMenuItem ssmenu = new ToolStripMenuItem(); ssmenu.Name = dr["id_menu"].ToString(); ssmenu.Text = dr["des_menu"].ToString(); ssmenu.Click += new EventHandler(SubMenuClick); mnu.DropDownItems.Add(ssmenu); } } private void SubMenuClick(object sender, EventArgs e) { String query = "select url_menu from tb_menu where des_menu='" + sender.ToString() + "'"; SqlDataAdapter da = new SqlDataAdapter(query, conn); DataTable dt = new DataTable(); da.Fill(dt); Assembly frmAssembly = Assembly.LoadFile(Application.ExecutablePath); foreach (Type type in frmAssembly.GetTypes()) { if (type.BaseType == typeof(Form)) { if (type.Name == dt.Rows[0]["url_menu"].ToString()) { Form frmShow = (Form)frmAssembly.CreateInstance(type.ToString()); foreach (Form form in this.MdiChildren) { form.Close(); } frmShow.MdiParent = this; frmShow.WindowState = FormWindowState.Maximized; frmShow.Show(); } } } } }