日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NickLee 多層菜單

發布時間:2025/3/15 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NickLee 多層菜單 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

void InitMenu(){
???//初始化菜單
???MenuItem menuFirst;
???DataSet dsPermit;
???UserInfo ui ;

???DataSet dsF=func.GetDataTable("select * from cqsSystemTree where F_Parent='000' and isValid=1 order by showSort");
???foreach (DataRow myrow in dsF.Tables[0].Rows){
????//如果沒有主菜單下的任何一個子菜單權限則不顯示此菜單
????if (Session["uID"] != null){
?????ui = new UserInfo(Request.Cookies["LoginID"].Value);
?????if (ui.Role == "C"){
??????dsPermit = func.GetDataTable("select * from cqsUserPermit where uid="+ Session["uID"] +" and F_SysCode like '"+ myrow["F_SysCode"].ToString() +"%' ");
??????if (dsPermit.Tables[0].Rows.Count ==0){
???????continue;
??????}
?????}
????}
????menuFirst=new MenuItem();
????menuFirst.Text=myrow["F_SysNameEN"].ToString();

????DataSet dsLen=func.GetDataTable("select isnull(max(len(f_sysnamech)),0) as ls from cqsSystemTree where f_parent='"+myrow["F_SysCode"].ToString()+"' and isValid=1");
????int len=Convert.ToInt32(dsLen.Tables[0].Rows[0]["ls"].ToString());

????//如果沒有主菜單下的任何一個子菜單權限則不顯示此菜單,只針對 C 用戶
????if (Session["uID"] != null){
?????ui = new UserInfo(Request.Cookies["LoginID"].Value);
?????MenuItem menuSecond;
?????MenuItem menuThird;
?????DataSet dsS=func.GetDataTable("select * from cqsSystemTree where F_Parent='"+ myrow["F_SysCode"].ToString() +"' and isValid=1 order by showSort");
?????foreach (DataRow myrow2 in dsS.Tables[0].Rows){
??????menuSecond=new MenuItem();
??????menuSecond.Text=myrow2["F_SysNameEN"].ToString();

??????//如果沒有主菜單下的任何一個子菜單權限則不顯示此菜單,只針對 C 用戶
??????if (ui.Role == "C") {
???????dsPermit = func.GetDataTable("select * from cqsUserPermit where uid="+ Session["uID"] +" and F_SysCode like '"+ myrow2["F_SysCode"].ToString() +"%' ");
???????if (dsPermit.Tables[0].Rows.Count ==0){
????????continue;
???????}
??????}

??????DataSet dsT=func.GetDataTable("select * from cqsSystemTree where F_Parent='"+ myrow2["F_SysCode"].ToString() +"' and isValid=1 order by showSort");
??????if (dsT.Tables[0].Rows.Count>0){
???????menuSecond.Text +="&nbsp;&nbsp;" + func.ReplicateChar("&nbsp;",len-menuSecond.Text.Length) + "<img src ='../Images/arrow1.gif' align ='right' >";
???????menuSecond.Style.Add("backgroup","");
???????foreach (DataRow myrow3 in dsT.Tables[0].Rows) {
????????//如果沒有主菜單下的任何一個子菜單權限則不顯示此菜單,只針對 C 用戶
????????if (ui.Role == "C") {
?????????dsPermit = func.GetDataTable("select * from cqsUserPermit where uid="+ Session["uID"] +" and F_SysCode like '"+ myrow3["F_SysCode"].ToString() +"%' ");
?????????if (dsPermit.Tables[0].Rows.Count ==0){
??????????continue;
?????????}
????????}

????????menuThird=new MenuItem();
????????menuThird.Text=myrow3["F_SysNameEN"].ToString();
????????if (myrow3["F_URL"].ToString()=="") {
?????????menuThird.NavigateUrl ="../ErrorMsg.aspx?MsgID=M0002";?
????????}
????????else {
?????????menuThird.NavigateUrl=myrow3["F_URL"].ToString() + "&F_SysCode="+ myrow3["f_sysCode"].ToString();
????????}
????????menuThird.Target="right";
????????menuSecond.Items.Add(menuThird);
???????}
??????} else {
???????if (myrow2["F_Url"].ToString()=="") {
????????menuSecond.NavigateUrl ="../ErrorMsg.aspx?MsgID=M0002";
???????}
???????else {
????????menuSecond.NavigateUrl=myrow2["F_Url"].ToString() + "&F_SysCode="+ myrow2["f_sysCode"].ToString();
???????}
??????
???????menuSecond.Target="right";
??????}
??????menuFirst.Items.Add(menuSecond);
?????}
????}
????Menu1.Items.Add(menuFirst);
???}
??}

轉載于:https://www.cnblogs.com/Bluer/archive/2006/12/26/604215.html

總結

以上是生活随笔為你收集整理的NickLee 多層菜單的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。