SolpartMenu的使用:(二)、在ASP.NET页面中使用SolpartMenu控件之动态的加载数据库中的数据来生成菜单

来源:互联网 发布:tpp rcep知乎 编辑:程序博客网 时间:2024/04/29 20:36

在ASP.NET页面中使用SolpartMenu控件
(二)、动态的加载数据库中的数据来生成菜单
 
 动态的加载数据库中的数据来生成菜单,主要是设计数据库,我们所做的项目中就是使这种方法生成
 菜单的,因为关系到权限的问题,
 
 1、设计数据库
   如图所示:
  
 
  其中用到三个表,( xt_menu,xt_jsmx,xt_qxmx ) xt_menu 包含所有的菜单项,xt_jsmx包含所有的用户类型,xt_qxmx包含各个用户类型所能显示的菜单的编号。
2、在后台使用SolpartMenu的BindDataTable方法进行数据的绑定
 
  SqlConnection conn=new SqlConnection (this.strcon );
 SqlDataAdapter cmd=new SqlDataAdapter();
 SqlCommand selcmd=new SqlCommand ();
 cmd.SelectCommand =selcmd;
 selcmd.CommandText ="[gj_proc_getmenu]";
 selcmd.CommandType = CommandType.StoredProcedure ;
 selcmd.Connection = conn;
 selcmd.Parameters.Add ("@menu_jsbh","01");
 DataSet dst=new DataSet ();
 cmd.Fill (dst,"menu");   

 this.SolpartMenu1.BindDataTable(dst.Tables["menu"],"","id","parent_id","title","url","image","sequence");

此处还有两种方法可以给SolpartMenu生成菜单
 一种是利用给SolpartMenu的MenuData属性添加数据。
另一种是利用SolpartMenu的AddMenuItem和AddBreak添加数据。
 如:
      添加第一个菜单项(简体中文),同时指定其ID值为1

objItem = SolpartMenu1.AddMenuItem("1", "小学数学", "")

‘为“小学数学”项增加一个子菜单,ID值为11,带图标

SolpartMenu1.AddMenuItem(objItem, "11", " 一年级", "", "introduction.gif")

‘增加一条菜单分隔线,根据参数为1决定其位置在“小学数学”的子菜单中

SolpartMenu1.AddBreak("1")


 

原创粉丝点击