初始化树

2017-10-28 10:36:43  访问(1784) 赞(0) 踩(0)



    #region 初始化树

    /// <summary>
    /// 初始化树
    /// </summary>
    /// <param name="xdbHelper">数据库链接串</param>
    protected void InitTree(DBHelper xdbHelper)
    {

        eKingBmLibHelper bmH = eKingBmLibHelper.GetInstance();

        DataTable dt = null;

        dt = bmH.BmUserGroup_DataTableBasicList(true, xdbHelper);

        DataBindTreeByDataTable(dt, xdbHelper);
    }

    /// <summary>
    /// 初始化树
    /// </summary>
    /// <param name="dt">树的数据集合</param>
    /// <param name="xdbHelper">数据库链接串</param>
    protected void DataBindTreeByDataTable(DataTable dt, DBHelper xdbHelper)
    {
        TreeView tv = treeView_Main;
        tv.Nodes.Clear();

        if (dt == null)
            return;

        eKing.Bm_InfoName.DataColumnNameInfo.User.UTB_BM_USER_GROUP
            ni
            =
            eKing.Bm_InfoName.DataColumnNameInfo.User.UTB_BM_USER_GROUP.GetInstance();

        DataBindTreeByPID(tv.Nodes, dt, "0", ni, xdbHelper);
    }

    /// <summary>
    /// 通过PID递归绑定树
    /// </summary>
    /// <param name="tnc"></param>
    /// <param name="dt"></param>
    /// <param name="pId"></param>
    /// <param name="xdbHelper"></param>
    protected void DataBindTreeByPID
        (
            TreeNodeCollection tnc, 
            DataTable dt, 
            string pId, 
            eKing.Bm_InfoName.DataColumnNameInfo.User.UTB_BM_USER_GROUP ni,
            DBHelper xdbHelper)
    {
        TreeNode tn = null;

        foreach (DataRow dr in dt.Rows)
        {
            if (dr[ni.PID].ToString() != pId)
                continue;

            tn = new TreeNode();
            tn.Value = dr[ni.ID].ToString();
            tn.Text = dr[ni.TheName].ToString();

            tnc.Add(tn);

            DataBindTreeByPID(tn.ChildNodes, dt, tn.Value, ni, xdbHelper);
        }
    }

    #endregion 初始化树

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)