DevExpress.XtraTreeList.TreeList 컨트롤: 데이터 원본을 바인딩하는 예

        private void DataShowTree()
        {
            this.Cursor = Cursors.WaitCursor;
            DataTable dt = null;
            string sSql = "	SELECT CONVERT(VARCHAR,ParentID) AS ParentID,convert(varchar,AddressBookID) as KeyID,TypeName as Name FROM tblAddressBookFolder A order by ParentID,Name";
            try
            {
                dt = sqlHelper.ExecuteDataTable(Common.ConnString, CommandType.Text, sSql);
                if (dt == null || dt.Rows.Count == 0)
                {
                    string sSql1 = " INSERT INTO [tblAddressBookFolder]([AddressBookID],[ParentID],[TypeName])  select 1,0,'Data'";
                    int iResult = sqlHelper.ExecuteNonQuery(Common.ConnString, CommandType.Text, sSql1);
                    dt = sqlHelper.ExecuteDataTable(Common.ConnString, CommandType.Text, sSql);
                }
            }
            catch (Exception ex)
            {
                Common.DisplayMsg(this.Text, ex.Message.ToString());
            }

            trl.Nodes.Clear();
            trl.DataSource = dt;
            trl.ParentFieldName = "ParentID";
            trl.KeyFieldName = "KeyID";
            trl.Columns["Name"].Caption = " ";

           // // , 
            //if (!string.IsNullOrEmpty(sFocusedNodeText))
           // {
           //     foreach (TreeListNode node in this.trl.Nodes)
           //     {
           //         FindSelectedNode(node);
           //     }
           // }

            this.trl.Nodes[0].Expanded = true; //  1 

            //sSql = "select AddressBookID,TypeName FROM tblAddressBookFolder WHERE AddressBookID>1";
           // Common.SetLookUpList(ref loeType, sSql, 0, 1);//     

            this.Cursor = Cursors.Default;
        }

설명:
1,trl이 바로 DevExpress입니다.XtraTreeList.TreeList ID
2, sqlHelper 클래스에 대해 많습니다.여기 얘기 안 할게요.
3, 데이터베이스 테이블의 구조는 tblTest(ParentID int, ID int, Name varchar(20) 형식입니다. 세 필드만 있으면 됩니다.

좋은 웹페이지 즐겨찾기