MsSQL   发布时间:2022-05-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了asp.net Menu控件+SQLServer实现动态多级菜单大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

首先是数据表的设计

asp.net Menu控件+SQLServer实现动态多级菜单

其中treEID指的是该菜单项的父ID,如果treEID为0.表示该菜单项为根菜单项,否则表示他为某菜单项的子菜单,比如ID为2的项,他的父节点是1.则他是张三的子菜单,而张三是根菜单,position只用于根菜单项,用于控制显示的顺序。
往网页里拖入一个menu控件,然后添加代码
复制代码 代码如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.sqlClient;
using System.Data.ProviderBase;
public partial class _Default : System.Web.UI.Page
{
public int treEID;
protected void Page_Load(object sender,EventArgs E)
{
sqlConnection CN = new sqlConnection("server=.;Trusted_Connection=sspI;database=MENUDB"); //MENUDB是数据库名
//设定数据库操作命令
CN.open();
sqlCommand Scmd = new sqlCommand("SELEct * FROM tB_MENU where treEID=0 order by position",CN); //选出根菜单
sqlDataReader odr = Scmd.ExecuteReader();
while (odr.Read()) //循环读取
{ @H_168_6@menuItem menuNode = new MenuItem(); @H_168_6@menuNode.Text = odr["names"].ToString(); @H_168_6@menuNode.Value = odr["id"].ToString(); @H_168_6@menuNode.Enabled = true; @H_168_6@menuNode.NavigateUrl = odr["page"].ToString(); @H_168_6@menu1.Items.Add(menuNodE); //添加到根菜单
treEID = Convert.ToInt16(odr["id"].ToString());
addchildmenu(menuNodE);
}
//关闭数据库连接
Scmd.Connection.Close();
}
protected void addchildmenu(MenuItem pnodE) //添加子菜单
{
sqlConnection CN = new sqlConnection("server=.;Trusted_Connection=sspI;database=MENUDB");
?
//设定数据库操作命令
CN.open();
sqlCommand Scmd1 = new sqlCommand("SELEct * FROM tB_MENU where treEID=" + treEID + "",CN);
?
sqlDataReader odr = Scmd1.ExecuteReader();
while (odr.Read())
{ @H_168_6@menuItem menuNode = new MenuItem(); @H_168_6@menuNode.Text = odr["names"].ToString(); @H_168_6@menuNode.Value = odr["id"].ToString(); @H_168_6@menuNode.Enabled = true; @H_168_6@menuNode.NavigateUrl = odr["page"].ToString();
pnode.ChildItems.Add(menuNodE); //为当前菜单项添加子菜单
treEID = Convert.ToInt16(odr["id"].ToString());
addchildmenu(menuNodE); //循环添加子菜单
}
//关闭数据库连接
Scmd1.Connection.Close();
}
}

最终效果如下图

asp.net Menu控件+SQLServer实现动态多级菜单

大佬总结

以上是大佬教程为你收集整理的asp.net Menu控件+SQLServer实现动态多级菜单全部内容,希望文章能够帮你解决asp.net Menu控件+SQLServer实现动态多级菜单所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: