📄 tree.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Microsoft.Web .UI .WebControls ;
using OI.DatabaseOper;
namespace OI.Manage
{
/// <summary>
/// Tree 的摘要说明。
/// </summary>
public class Tree :OI.PageBase
{
protected Microsoft.Web.UI.WebControls.TreeView Tv_menu;
protected System.Web.UI.WebControls.Label LabelError;
DatabaseConnect Dbc=new DatabaseConnect ();
private void Page_Load(object sender, System.EventArgs e)
{
if (Session["userid"]==null)
{
Response.Write ("<script>alert('超时,请重新登录');top.location.href='../userpass.aspx';</script>");
return ;
}
LabelError.Visible=false;
try
{
if (!Page.IsPostBack )
{
CreateDataSource("0");
}
}
catch
{
LabelError.Visible=true;
Response.End();
}
}
private void CreateDataSource(string Parentid)
{
string sqlstr =" select distinct m.id, m.ModuleID,m.modulename,m.menupath,m.parentmoduleid ";
sqlstr +=" from models m, accounts_userroles ur,account_rolepermission rm ";
sqlstr +=" where m.showmenu=1 ";
sqlstr +=" and m.moduleid=rm.moduleid ";
sqlstr +=" and rm.roleid=ur.roleid ";
sqlstr +=" and ur.userid="+this.User.Identity.Name;
sqlstr +=" and parentmoduleid='"+Parentid+"'";
sqlstr +=" order by m.ID ";
DataSet ds=new DataSet ();
ds=Dbc.getBinding (sqlstr,"s");
foreach (DataRow dr in ds.Tables[0].Rows )
{
TreeNode node=new TreeNode ();
node.Text =dr["modulename"].ToString ();
node.ID =dr["moduleid"].ToString ();
// node.ImageUrl="../images/sciencesearch.gif";
if (dr["menupath"].ToString () !="")
{
node.NavigateUrl=dr["menupath"].ToString ();
node.Target ="MainFrame";
}
CreateDataSource(dr["moduleid"].ToString (),ref node);
Tv_menu.Nodes .Add(node);
}
}
private void CreateDataSource (string Parentid, ref TreeNode Pnode)
{
string sqlstr =" select distinct m.id, m.ModuleID,m.modulename,m.menupath,m.parentmoduleid ";
sqlstr +=" from models m, accounts_userroles ur,account_rolepermission rm ";
sqlstr +=" where m.showmenu=1 ";
sqlstr +=" and m.moduleid=rm.moduleid ";
sqlstr +=" and rm.roleid=ur.roleid ";
sqlstr +=" and ur.userid="+this.User.Identity.Name;
sqlstr +=" and parentmoduleid='"+Parentid+"'";
sqlstr +=" order by m.ID";
DataSet ds=new DataSet ();
ds=Dbc.getBinding (sqlstr,"s");
foreach (DataRow dr in ds.Tables[0].Rows )
{
TreeNode node=new TreeNode ();
node.Text =dr["modulename"].ToString ();
node.ID =dr["moduleid"].ToString ();
if (dr["menupath"].ToString () !="")
{
node.NavigateUrl=dr["menupath"].ToString ();
node.Target ="MainFrame";
}
CreateDataSource(dr["moduleid"].ToString (),ref node);
Pnode.Nodes .Add(node);
}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void check(object sender, Microsoft.Web.UI.WebControls.TreeViewClickEventArgs e)
{
}
private void Tv_menu_SelectedIndexChange(object sender, Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e)
{
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -