📄 tree.cs
字号:
using System;
using System.Data;
using System.Web.UI;
using System.Web.UI.WebControls;
using SQLHelper;
using System.Data.SqlClient;
namespace ASPNET2BBS
{
/// <summary>
/// Summary description for Tree
/// </summary>
public class Tree
{
public static string ApplicationPath = "localhost";
public void BindLeftTreeView(TreeView treeView,bool isExpanded,bool isLink)
{
Tree tree = new Tree();
DataTable dataTable = tree.GetTrees(ASPNET2System.PROJECTNAME.ToLower());
treeView.Nodes.Clear(); ///清空树的所有节点
///创建根节点
TreeNode rootNode = new TreeNode();
///设置根节点属性
rootNode.Text = ASPNET2System.PROJECTDESN;
rootNode.Value = ASPNET2System.PROJECTTREEROOTNODEDATA; ///设置根节点的Key值
rootNode.Expanded = isExpanded;
if (isLink == true)
{
rootNode.NavigateUrl = "MainDesktop.aspx";
rootNode.Target = "MainFrame";
rootNode.ImageUrl = "../Images/Icon/05.gif";
}
///添加根节点
treeView.Nodes.Add(rootNode);
///创建其他节点
CreateChildNode(rootNode, dataTable,isExpanded,isLink);
}
private void CreateChildNode(TreeNode parentNode, DataTable dataTable, bool isExpanded, bool isLink)
{
DataRow[] rowList = dataTable.Select("ParentID='" + parentNode.Value + "'");
foreach (DataRow row in rowList)
{ ///创建新节点
TreeNode node = new TreeNode();
///设置节点的属性
node.Text = row["Title"].ToString();
node.Value = row["TreeID"].ToString();
node.Expanded = isExpanded;
if (isLink == true)
{
///格式化后台管理页面的链接地址
node.NavigateUrl = FormatAdminPageUrl(row["Url"].ToString());
node.Target = "MainFrame";
}
parentNode.ChildNodes.Add(node);
///递归调用,创建其他节点
CreateChildNode(node, dataTable,isExpanded,isLink);
}
}
public void BindLeftTreeView(TreeView treeView, bool isExpanded, bool isLink, string sRoleID)
{
Tree tree = new Tree();
DataTable dataTable = tree.GetTrees(ASPNET2System.PROJECTNAME.ToLower());
treeView.Nodes.Clear(); ///清空树的所有节点
///创建根节点
TreeNode rootNode = new TreeNode();
///设置根节点属性
rootNode.Text = ASPNET2System.PROJECTDESN;
rootNode.Value = ASPNET2System.PROJECTTREEROOTNODEDATA; ///设置根节点的Key值
rootNode.Expanded = isExpanded;
if (isLink == true)
{
rootNode.NavigateUrl = "MainDesktop.aspx";
rootNode.Target = "MainFrame";
rootNode.ImageUrl = "../../Images/Icon/05.gif";
}
///添加根节点
treeView.Nodes.Add(rootNode);
///创建其他节点
CreateChildNode(rootNode, dataTable, isExpanded, isLink,sRoleID);
}
private void CreateChildNode(TreeNode parentNode, DataTable dataTable, bool isExpanded,
bool isLink,string sRoleID)
{
DataRow[] rowList = dataTable.Select("ParentID='" + parentNode.Value + "'");
foreach (DataRow row in rowList)
{ ///创建新节点
TreeNode node = new TreeNode();
///设置节点的属性
node.Text = row["Title"].ToString();
node.Value = row["TreeID"].ToString();
node.Expanded = isExpanded;
if (node.Value == sRoleID)
{
node.Selected = true;
}
if (isLink == true)
{
///格式化后台管理页面的链接地址
node.NavigateUrl = FormatAdminPageUrl(row["Url"].ToString());
node.Target = "MainFrame";
}
parentNode.ChildNodes.Add(node);
///递归调用,创建其他节点
CreateChildNode(node, dataTable, isExpanded, isLink,sRoleID);
}
}
private DataTable GetTrees(string sProName)
{
///定义类SQLHelper
SQLHelper.SQLHelper sqlHelper = new SQLHelper.SQLHelper();
///定义保存从数据库获取的结果的DataReader
SqlDataReader dr = null;
///创建访问数据库的参数
SqlParameter[] paramList = {
sqlHelper.CreateInParam("@ProName",SqlDbType.VarChar,200,sProName)
};
try
{
///执行存储过程
sqlHelper.RunProc("Pr_GetTrees", paramList, out dr);
}
catch (Exception ex)
{
///抛出执行数据库异常
SystemError.CreateErrorLog(ex.Message);
throw new Exception(ex.Message, ex);
}
///获取DataTable对象
DataTable dataTable = SystemTools.ConvertDataReaderToDataTable(dr);
///返回从数据库获取的结果
return (dataTable);
}
private string FormatAdminPageUrl(string sUrl)
{
if (sUrl.IndexOf("Admins") > -1)
{
return ("Http://" + ApplicationPath + "/" + ASPNET2System.PROJECTNAME
+ "/" + sUrl);
}
else
{
return (sUrl);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -