通过DataTable绑定树形结构的FineUI.DropDownList - InitFineUITreeDropDownListByDataTable

2017-02-26 21:06:33  访问(2186) 赞(0) 踩(0)

  • 
    
            /// <summary>
            /// 通过DataTable绑定树形结构的FineUI.DropDownList - InitFineUITreeDropDownListByDataTable
            /// </summary>
            /// <param name="ddl"></param>
            /// <param name="dataTableValue"></param>
            /// <param name="curEmListControlAddItem"></param>
            public void InitFineUITreeDropDownListByDataTable
                (
                    FineUI.DropDownList ddl,
                    DataTable dataTableValue,
                    SlowX.FineUIUtils.Enums.ListControlAddItem.EmListControlAddItem curEmListControlAddItem
                )
            {
                List<FineUITreeDataBindItem> theList = new List<FineUITreeDataBindItem>();
    
                BuildListFineUITreeDataBindItem(theList, dataTableValue, "0", 1);
    
                ddl.DataTextField = "TheName";
    
                ddl.DataValueField = "ID";
    
    
                ddl.EnableSimulateTree = true;
                ddl.DataSimulateTreeLevelField = "TreeLevel";
                ddl.DataEnableSelectField = "EnableSelect";
    
    
                ddl.DataSource = theList;
                ddl.DataBind();
    
                DropDownListSlowXFineUIUtilsFunctions.AddItemByEmListControlAddItem(ddl, curEmListControlAddItem);
            }
    

  • 
            /// <summary>
            /// 构建List-FineUITreeDataBindItem - BuildListFineUITreeDataBindItem
            /// </summary>
            /// <param name="theResult"></param>
            /// <param name="dataTableValue"></param>
            /// <param name="pId"></param>
            /// <param name="level"></param>
            protected void BuildListFineUITreeDataBindItem
                (
                    List<FineUITreeDataBindItem> theResult,
                    DataTable dataTableValue,
                    string pId,
                    int level
                )
            {
                FineUITreeDataBindItem item = null;
    
                foreach (DataRow dr in dataTableValue.Rows)
                {
                    if (dr["PID"].ToString() != pId)
                        continue;
                    item = new FineUITreeDataBindItem(dr, level, true);
                    theResult.Add(item);
    
                    BuildListFineUITreeDataBindItem
                        (
                            theResult,
                            dataTableValue,
                            item.ID,
                            level + 1
                        );
                }
            }
               
    
  • using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Text;
    
    namespace SlowX.WebSite.Classes
    {
        /// <summary>
        /// FineUI版本树结构 - FineUITreeDataBindItem +
        /// </summary>
        [Serializable]
        public class FineUITreeDataBindItem
        {
            /// <summary>
            /// FineUI版本树结构
            /// </summary>
            public FineUITreeDataBindItem()
            {
    
            }
    
            /// <summary>
            /// FineUI版本树结构
            /// </summary>
            /// <param name="dr"></param>
            /// <param name="level"></param>
            /// <param name="enableSelect"></param>
            public FineUITreeDataBindItem(DataRow dr, int level, bool enableSelect)
            {
                m_ID = dr["ID"].ToString();
                m_TheNname = dr["TheName"].ToString();
                m_TreeLevel = level;
                m_EnableSelect = enableSelect;
            }
    
            /// <summary>
            /// FineUI版本树结构
            /// </summary>
            /// <param name="id"></param>
            /// <param name="name"></param>
            /// <param name="level"></param>
            /// <param name="enableSelect"></param>
            public FineUITreeDataBindItem(string id, string name, int level, bool enableSelect)
            {
                m_ID = id;
                m_TheNname = name;
                m_TreeLevel = level;
                m_EnableSelect = enableSelect;
            }
    
            /// <summary>
            /// ID
            /// </summary>
            private string m_ID;
    
            /// <summary>
            /// ID
            /// </summary>
            public string ID
            {
                get
                {
                    return m_ID;
                }
                set
                {
                    m_ID = value;
                }
            }
    
            /// <summary>
            /// 名称
            /// </summary>
            private string m_TheNname;
    
            /// <summary>
            /// 名称
            /// </summary>
            public string TheName
            {
                get
                {
                    return m_TheNname;
                }
                set
                {
                    m_TheNname = value;
                }
            }
    
            /// <summary>
            /// 
            /// </summary>
            private int m_TreeLevel;
    
            /// <summary>
            /// 
            /// </summary>
            public int TreeLevel
            {
                get { return m_TreeLevel; }
                set { m_TreeLevel = value; }
            }
    
            private bool m_EnableSelect;
    
            public bool EnableSelect
            {
                get { return m_EnableSelect; }
                set { m_EnableSelect = value; }
            }
        }
    }
    
    

标签:通过DataTable绑定树形结构的FineUI.DropDownList - InitFineUITreeDropDownListByDataTable 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)
 
  ┈全部┈  
 
(显示默认分类)