C# 利用数据库和MenuStrip控件动态生成菜单,设计如图一,拖一个Menustrip控件。
设计实现如下:
1、数据库设计:
| 列名 | 数据类型 | 允许NULL值 | 描述 |
| MODULENAME | nvarchar(100) | 不允许 | 系统名称 |
| SECTIONNAME | nvarchar(100) | 不允许 | 系统名称 |
| FUNCTIONNAME | nvarchar(100) | 不允许 | 功能模块 |
| SORTNO | smallint | 允许 | |
| PROMPTNAME | nvarchar(100) | 允许 | |
| creation_date | datetime | 允许 | |
| creation_by | nvarchar(50) | 允许 | |
| last_update_by | nvarchar(50) | 允许 | |
| last_update_date | datetime | 允许 | |
| description | nvarchar(200) | 允许 | |
| WEBPAGE | nvarchar(200) | 允许 | 设计页面路径 |
| DISABLED | smallint | 允许 | 是否可用 |
| MENU_I | int | 允许 | 子级菜单 |
| MENU_J | int | 允许 | 父级菜单 |
| EN_MENUNAME | nvarchar(100) | 允许 | 菜单英文名 |
| CN_MENUNAME | nvarchar(100) | 允许 | 菜单中文名 |
| TD_MENUNAME | nvarchar(100) | 允许 | 菜单繁体名 |
2、数据库数据插入
INSERT [dbo].[MODULEFUNCTION_T] ([MODULENAME], [SECTIONNAME], [FUNCTIONNAME], [SORTNO], [PROMPTNAME], [creation_date], [creation_by], [last_update_by], [last_update_date], [description], [WEBPAGE], [DISABLED], [MENU_I], [MENU_J], [EN_MENUNAME], [CN_MENUNAME], [TD_MENUNAME]) VALUES (N'RobotWMS', N'RobotWMS', N'系统', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, 10000, 0, N'System', N'系统', N'系统')
INSERT [dbo].[MODULEFUNCTION_T] ([MODULENAME], [SECTIONNAME], [FUNCTIONNAME], [SORTNO], [PROMPTNAME], [creation_date], [creation_by], [last_update_by], [last_update_date], [description], [WEBPAGE], [DISABLED], [MENU_I], [MENU_J], [EN_MENUNAME], [CN_MENUNAME], [TD_MENUNAME]) VALUES (N'RobotWMS', N'RobotWMS', N'系统', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, 10020, 10000, N'-', N'-', N'-')
INSERT [dbo].[MODULEFUNCTION_T] ([MODULENAME], [SECTIONNAME], [FUNCTIONNAME], [SORTNO], [PROMPTNAME], [creation_date], [creation_by], [last_update_by], [last_update_date], [description], [WEBPAGE], [DISABLED], [MENU_I], [MENU_J], [EN_MENUNAME], [CN_MENUNAME], [TD_MENUNAME]) VALUES (N'RobotWMS', N'RobotWMS', N'系统', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, 1, 10080, 10000, N'LogOut', N'切换帐号', N'切换帐号')
INSERT [dbo].[MODULEFUNCTION_T] ([MODULENAME], [SECTI

本文介绍了如何使用C#结合数据库,在MenuStrip控件中动态生成菜单。首先,设计数据库结构并填充数据,然后在C#的页面LOAD事件中编写代码,从数据库读取数据并创建相应的菜单项,最终展示为功能丰富的菜单栏。

7144

被折叠的 条评论
为什么被折叠?



