c#DevExpress組件TreeList控制項自己控制節點表徵圖(二)

來源:互聯網
上載者:User

 

綁定樹節點及表徵圖狀態如下:

 

/// <summary>        /// 綁定資料上報匯出樹        /// </summary>        private void BindJgsyTree()        {            JGSYTreeService jgsyTreeService = new JGSYTreeService();            List<JGSYTree> listJgsyTree = jgsyTreeService.GetExportJgsyTree(Global.User.JS_USER_NAME);            treeListJgsyCommon.Columns.Add();            treeListJgsyCommon.Columns[0].Visible = true;            treeListJgsyCommon.DataSource = listJgsyTree;            treeListJgsyCommon.KeyFieldName = "JGSY_CODE";            treeListJgsyCommon.ParentFieldName = "JGSY_PARENT_CODE";            treeListJgsyCommon.Columns[0].FieldName = "JGSY_NAME";            treeListJgsyCommon.ExpandAll();            //ImageCollection imgCollection = TreeListImageState.GetImageCollection();            treeListJgsyCommon.StateImageList = TreeListImageState.GetImageList();//imgCollection; //            foreach (TreeListNode node in treeListJgsyCommon.Nodes)            {                node.StateImageIndex = (int)TreeNodeCheckImage.Loading;                BindApplyStateChild(node, true);            }            //非同步更新是否有上報資料控制節點狀態            BackgroundWorker bgWorker = new BackgroundWorker();            bgWorker.DoWork += new DoWorkEventHandler((sender1, e1) =>            {                InvokeSetControlEnable(false);                 foreach (TreeListNode node in treeListJgsyCommon.Nodes)                {                    string jgsyCode = node.GetValue("JGSY_CODE").ToString();                    bool applyState = jgsyTreeService.GetApplyState(jgsyCode);                    if (applyState)                        node.StateImageIndex = (int)TreeNodeCheckImage.UnCheckedBranch;                    else                        node.StateImageIndex = (int)TreeNodeCheckImage.DisCheckedBranch;                    BindApplyStateChild(node, false);                }                InvokeSetControlEnable(true);             });            bgWorker.RunWorkerAsync();        }        /// <summary>        /// 綁定申報狀態        /// </summary>        private void BindApplyStateChild(TreeListNode treeNode, bool isLoading)        {            foreach (TreeListNode node in treeNode.Nodes)            {                if (isLoading)                    node.StateImageIndex = (int)TreeNodeCheckImage.Loading;                else                {                    string jgsyCode = node.GetValue("JGSY_CODE").ToString();                    JGSYTreeService jgsyTreeService = new JGSYTreeService();                    bool applyState = jgsyTreeService.GetApplyState(jgsyCode);                    if (applyState)                        node.StateImageIndex = (int)TreeNodeCheckImage.UnCheckedBranch;                    else                        node.StateImageIndex = (int)TreeNodeCheckImage.DisCheckedBranch;                }                BindApplyStateChild(node, isLoading);            }        }

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.