Winfrom 做一个菜单

chenhuiWENYIN 2014-08-15 10:24:42
原本菜单固定的,现在想做成动态显示的
/// <summary>
/// 用户单击窗体左侧“导航栏”中按钮时的事件处理方法。
/// </summary>
private void NavBar_ImageButtonClick(object sender, string targetModule)
{
switch (targetModule)
{
case "Main": // “欢迎使用”功能模块
FormMain.LoadNewControl(Main.Default.Instance);
break;

case "Jcsj.Fczl": // “基础数据”房产资料功能模块
this.PnlContent.Controls.Clear();
Fczl fl = new Fczl();
fl.TopLevel = false;
this.PnlContent.Controls.Add(fl);
fl.Show();
break;
case "Jcsj.Clzl": // “基础数据”车辆管理功能模块
this.PnlContent.Controls.Clear();
Clzl cl = new Clzl();
cl.TopLevel = false;
this.PnlContent.Controls.Add(cl);
cl.Show();
break;
case "Jcsj.Khzl": // “基础数据”客户资料功能模块
this.PnlContent.Controls.Clear();
Khzl kl = new Khzl();
kl.TopLevel = false;
this.PnlContent.Controls.Add(kl);
kl.Show();
break;
case "Xmgl.Xmjh": // “项目管理”项目计划
this.PnlContent.Controls.Clear();
Xmjh xh = new Xmjh();
xh.TopLevel = false;
this.PnlContent.Controls.Add(xh);
xh.Show();
break;



case "OA.OATask": // “OA我的办公”客户资料功能模块
this.PnlContent.Controls.Clear();
OATask oaTask = new OATask();
oaTask.TopLevel = false;
this.PnlContent.Controls.Add(oaTask);
oaTask.Show();
break;

case "OA.Gongj": // “OA我的办公”客户资料功能模块
this.PnlContent.Controls.Clear();
Gongj gongj = new Gongj();
gongj.TopLevel = false;
this.PnlContent.Controls.Add(gongj);
gongj.Show();
break;


case "Rszl.Ygzl": // “人事资料”部门功能模块
this.PnlContent.Controls.Clear();
Ygzl ygzl = new Ygzl();
ygzl.TopLevel = false;
this.PnlContent.Controls.Add(ygzl);
ygzl.Show();
break;
case "Rszl.DTment": // “人事资料”员工功能模块
this.PnlContent.Controls.Clear();
DTment dTment = new DTment();
dTment.TopLevel = false;
this.PnlContent.Controls.Add(dTment);
dTment.Show();
break;

}
}
那么怎样修改成取数据库里的数据动态显示呢?
...全文
344 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
於黾 2014-08-15
  • 打赏
  • 举报
回复
从数据库里读出来,放datatable里,然后循环datatable,执行你的swich,这样里面没有的,不就不显示了么
chenhuiWENYIN 2014-08-15
  • 打赏
  • 举报
回复
引用 3 楼 Z65443344 的回复:
递归一下,一项一项放到菜单里就行了啊 问题能不能先分解,不要一股脑扔出来,等着别人给完整源码么... 到底哪里不会,说清楚了,比较容易解决
不是写得好清楚了吗?就是原本是用switch case 语句显示的,现在要求把switch case改成动态取数据库里数据显示
於黾 2014-08-15
  • 打赏
  • 举报
回复
递归一下,一项一项放到菜单里就行了啊 问题能不能先分解,不要一股脑扔出来,等着别人给完整源码么... 到底哪里不会,说清楚了,比较容易解决
徐小Mo 2014-08-15
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
首先你先学会动态创建菜单的item,然后就是从数据库中读取数据,循环数据集,创建item
版主,昨天我私信你的,帮我解答下呗,困恼
bdmh 2014-08-15
  • 打赏
  • 举报
回复
首先你先学会动态创建菜单的item,然后就是从数据库中读取数据,循环数据集,创建item
liuruitao647 2014-08-15
  • 打赏
  • 举报
回复
绑定事件,在事件里面读取数据库数据。
chenhuiWENYIN 2014-08-15
  • 打赏
  • 举报
回复
引用 5 楼 Z65443344 的回复:
从数据库里读出来,放datatable里,然后循环datatable,执行你的swich,这样里面没有的,不就不显示了么
能不能写个列子看看哦?

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧