DEV treelist 操作

1、绑定

 

      /// <summary>
        /// 刷新病种分类字典信息
        /// </summary>
        private void RefushType()
        {
            //JHSD_DISEASE_DICTlist = Cache.Instance().GetJHSD_DISEASE_DICT_ALL().OrderBy(f=>f.JHSD_TYPE_CODE);
            JHSD_DISEASE_DICTlist = Cache.Instance().GetJHSD_DISEASE_DICT_ALL();
            typeList = typebll.GetJHSD_DISEASE_DICT_TYPE();
            foreach (JHSD_DISEASE_DICT_TYPE dicttype in typeList)
            {
                GetDiseaseDictType(dicttype);
            }
            var dictlist = JHSD_DISEASE_DICTlist.FindAll(f => f.JHSD_TYPE_CODE == null);
            foreach (JHSD_DISEASE_DICT item in dictlist)
            {
                GetDiseaseDict(item, null);
            }
            treeListDiseaseType.ExpandAll();
            treeListDiseaseType.BestFitColumns();
            //treeListDiseaseType.OptionsBehavior.Editable = false;
        }

        /// <summary>
        /// 添加病种分类node
        /// </summary>
        /// <param name="type"></param>
        private void GetDiseaseDictType(JHSD_DISEASE_DICT_TYPE type)
        {
            try
            {

                List<JHSD_DISEASE_DICT> diseasedict = JHSD_DISEASE_DICTlist.FindAll(f => f.JHSD_TYPE_CODE == type.JHSD_TYPE_CODE)
                    as List<JHSD_DISEASE_DICT>;
                DevExpress.XtraTreeList.Nodes.TreeListNode rootnode;
                rootnode = this.treeListDiseaseType.AppendNode(new object[] { type.JHSD_TYPE_CODE, type.JHSD_TYPE_NAME, diseasedict.Count }, null);
                rootnode.Tag = type;
                rootnode.StateImageIndex = 1;
                //rootnode.ImageIndex = 1;

                foreach (JHSD_DISEASE_DICT JhsdDisease in diseasedict)
                {
                    GetDiseaseDict(JhsdDisease, rootnode);
                }

            }
            catch (Exception ex)
            {
                JHLog.Log.Writelog("病种分类添加失败!" + ex.Message);
            }
        }

        /// <summary>
        /// 添加病种node
        /// </summary>
        /// <param name="dict"></param>
        /// <param name="parentNode"></param>
        private void GetDiseaseDict(JHSD_DISEASE_DICT dict, DevExpress.XtraTreeList.Nodes.TreeListNode parentNode)
        {
            DevExpress.XtraTreeList.Nodes.TreeListNode rootnode;
            JHSD_DISEASE_DICT_TYPE dicttype = typeList.FirstOrDefault(f => f.JHSD_TYPE_CODE == dict.JHSD_TYPE_CODE);
            int isused = Convert.ToInt32(dict.IS_USED);
            if (parentNode == null)
            {
                rootnode = this.treeListDiseaseType.AppendNode(new object[] { dict.DISEASE_ID, dict.DISEASE_NAME, "", isused }, null);
                rootnode.StateImageIndex = 0;
            }
            else
            {
                rootnode = this.treeListDiseaseType.AppendNode(new object[] { dict.DISEASE_ID, dict.DISEASE_NAME, "", isused }, parentNode);
                rootnode.StateImageIndex = 0;
            }
            rootnode.Tag = dict;
        }
 

2、拖拽主子节点

       /// <summary>
        /// 通过拖拽给字典分类
        /// 刘亚仙20210812
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void treeListDiseaseType_DragDrop(object sender, DragEventArgs e)
        {
            JHSD_DISEASE_DICT_BLL bll = new JHSD_DISEASE_DICT_BLL();
            List<JHSD_DISEASE_DICT> diseaselist = new List<JHSD_DISEASE_DICT>();
            TreeListNode moveNode = treeListDiseaseType.FocusedNode;
            if (moveNode.Tag is JHSD_DISEASE_DICT)
            {
                JHSD_DISEASE_DICT dictinfo = moveNode.Tag as JHSD_DISEASE_DICT;
                TreeListHitInfo hi = treeListDiseaseType.CalcHitInfo(treeListDiseaseType.PointToClient(new Point(e.X, e.Y)));
                TreeListNode node = hi.Node;
                if (hi.HitInfoType == HitInfoType.Empty || node != null)
                {
                    if (node.Tag is JHSD_DISEASE_DICT_TYPE)
                    {
                        JHSD_DISEASE_DICT_TYPE type = node.Tag as JHSD_DISEASE_DICT_TYPE;
                        dictinfo.JHSD_TYPE_CODE = type.JHSD_TYPE_CODE;
                        diseaselist.Add(dictinfo);
                        bll.UpdateJhsd_disease_dict(new List<JHSD_DISEASE_DICT>(diseaselist));
                    }
                }
            }

        }

3、修改treelist 中node的图片

       /// <summary>
        /// 修改病种状态是否启用
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void repositoryItemImageComboBox1_EditValueChanged(object sender, EventArgs e)
        {
            TreeListNode Node = treeListDiseaseType.FocusedNode;
            List<JHSD_DISEASE_DICT> diseaselist = new List<JHSD_DISEASE_DICT>();
            JHSD_DISEASE_DICT_BLL bll = new JHSD_DISEASE_DICT_BLL();
            if (Node.Tag is JHSD_DISEASE_DICT)
            {
                var ss = sender as DevExpress.XtraEditors.ImageComboBoxEdit;

                JHSD_DISEASE_DICT dictinfo = Node.Tag as JHSD_DISEASE_DICT;
                dictinfo.IS_USED = Convert.ToInt32(ss.EditValue);
                diseaselist.Add(dictinfo);
                bll.UpdateJhsd_disease_dict(new List<JHSD_DISEASE_DICT>(diseaselist));
            }
        }

4、treelist 属性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值