c#中如何动态添加菜单项并实现其点击?
推荐于2016-01-06
展开全部
从数据库读取出来菜单列表这点不用说了吧。最主要的就是给读取出来的菜单加上单击事件,可以用下面的方法实现。#region 绑定菜单信息
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Application.StartupPath + "\\config.xml");
XmlElement XmlRoot = xmlDoc.DocumentElement;
XmlNodeList xmlNodeList;
xmlNodeList = XmlRoot.SelectNodes("SQLCommand");
if (xmlNodeList.Count > 0)
{
Menu_Command.Items.Clear();//Menu_Command是一个System.Windows.Forms.ContextMenuStrip
Menu_Command.Items.Add("命令管理", null, new EventHandler(命令管理ToolStripMenuItem_Click));//命令管理ToolStripMenuItem_Click是一个单击事件函数
ToolStripSeparator tss1 = new ToolStripSeparator();
Menu_Command.Items.Add(tss1);
foreach (XmlNode xmlNode in xmlNodeList)
{
Menu_Command.Items.Add(xmlNode.FirstChild.InnerText, null, new EventHandler(Menu_Command_Click));//添加单击事件。Menu_Command_Click是个单击函数事件
}
}
#endregion
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Application.StartupPath + "\\config.xml");
XmlElement XmlRoot = xmlDoc.DocumentElement;
XmlNodeList xmlNodeList;
xmlNodeList = XmlRoot.SelectNodes("SQLCommand");
if (xmlNodeList.Count > 0)
{
Menu_Command.Items.Clear();//Menu_Command是一个System.Windows.Forms.ContextMenuStrip
Menu_Command.Items.Add("命令管理", null, new EventHandler(命令管理ToolStripMenuItem_Click));//命令管理ToolStripMenuItem_Click是一个单击事件函数
ToolStripSeparator tss1 = new ToolStripSeparator();
Menu_Command.Items.Add(tss1);
foreach (XmlNode xmlNode in xmlNodeList)
{
Menu_Command.Items.Add(xmlNode.FirstChild.InnerText, null, new EventHandler(Menu_Command_Click));//添加单击事件。Menu_Command_Click是个单击函数事件
}
}
#endregion
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询