protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//非回发时加载树 TreeView1为aspx上的树控件
readSysTree(TreeView1);
}
}
/// <summary>
/// 加载树
/// </summary>
/// <param name="TV"></param>
public void readSysTree(TreeView TV)
{
string sql = "select * from ProductType";
DataSet ds = cy_class.ExecuteCommand_DS(sql);
if (ds != null)
{
DataTable dt = ds.Tables[0];
TV.Nodes.Clear();
DataView dv = new DataView(dt);
dv.RowFilter = "Type_Parent='root'";//指定数据集的跟节点标识Type_Parent为表里的父级字段 root为根目录标识
foreach (DataRowView drv in dv)
{
TreeNode node = new TreeNode();
node.Text = drv["Type_Name"].ToString();
node.Value = drv["Type_Tag"].ToString();
// node.ImageUrl = "../images/admin_default/gif-0134.gif";
TV.Nodes.Add(node);
AddChildNode(dt, node);
node.ExpandAll();
}
}
}
/// <summary>
/// 递归加载子节点
/// </summary>
/// <param name="dt"></param>
/// <param name="node"></param>
public void AddChildNode(DataTable dt, TreeNode node)
{
DataView dv = new DataView(dt);
dv.RowFilter = "Type_Parent='" + node.Value + "'";
foreach (DataRowView drv1 in dv)
{
TreeNode ChildNode = new TreeNode();
ChildNode.Text = drv1["Type_Name"].ToString();
ChildNode.Value = drv1["Type_Tag"].ToString();
//if (node.Depth == 0)
//{
// ChildNode.ImageUrl = "../images/admin_default/gif-0057.gif";
//}
//else
//{
// ChildNode.ImageUrl = "../images/admin_default/gif-0056.gif";
//}
ChildNode.Expanded = true; ;
node.ChildNodes.Add(ChildNode);
AddChildNode(dt, ChildNode);
}
}