c#中如何动态添加菜单项并实现其点击?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c#中如何动态添加菜单项并实现其点击?相关的知识,希望对你有一定的参考价值。

如题,在MenuStrip控件上动态添加子项目,还要实现子项目的不同点击时间怎么处理?

参考技术A 从数据库读取出来菜单列表这点不用说了吧。最主要的就是给读取出来的菜单加上单击事件,可以用下面的方法实现。#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

VS里用C#如何实现点击一个按钮立即弹出另一个窗体?

VS里用C#实现点击一个按钮立即弹出另一个窗体步骤如下:

1、首先,打开VS2010后,新建一个项目。

2、选择菜单和工具栏下的MenuStrip,将其拖入窗体中。

3、然后可以将菜单的名称输入,双击下拉菜单中的打开第二窗体。

4、在右边的解决方案中右击选择添加->Windows床头提(F)...

5、选择生成->生成解决方案。

6、点击运行。

7、点击打开第二窗体。

8、弹出第二窗体。

参考技术A

在C#中窗口的显示有两种方式:模态显示(showdialog)和非模态显示(show)。看图片

模态显示,因为要保存一些数据,即showdialog再看代码

-----------------------------------------------华丽的分割线

再看非模态显示

上图走起。。。

 

参考技术B 很简单的嘛。
比如说你的窗体的名字叫form1,那么你可以在按钮处理程序里面这样做的。
form1 f = new form1(),f.show()。这样就可以了。

以上是关于c#中如何动态添加菜单项并实现其点击?的主要内容,如果未能解决你的问题,请参考以下文章

C# WinForm 自定义控件如何实现动态添加子控件

c#下怎样获得contextmenustrip动态添加的二级菜单项的文本

C# 我知道如何添加右键快捷菜单 但如何动态添加里面的菜单项呢? 求解

C#中DataTable动态添加行和删除行的问题?

C# 动态添加2级下拉菜单问题

如何从数组动态创建复选框列表?