示例#1
0
        public void m_mthFindAccordRecipe(int p_flag)
        {
            clsDcl_DoctorWorkstation objDW = new clsDcl_DoctorWorkstation();
            DataTable m_dt;
            long      strRet = objDW.m_mthFindAccordRecipe(this.m_objViewer.txtFind.Tag.ToString() + this.m_objViewer.txtFind.Text.Trim(), this.m_objViewer.cmbFind.Tag.ToString(), this.m_objViewer.LoginInfo.m_strEmpID, out m_dt, p_flag);

            this.m_objViewer.treeView1.BeginUpdate();
            this.m_objViewer.treeView1.Nodes.Clear();
            if (strRet > 0 && m_dt.Rows.Count > 0)
            {
                ArrayList objArrayList = new ArrayList();
                for (int i = 0; i < m_dt.Rows.Count; i++)
                {
                    AccordRecipeTarget oTemp = new AccordRecipeTarget();
                    oTemp.PYCODE_CHR     = m_dt.Rows[i]["PYCODE_CHR"].ToString().Trim();
                    oTemp.RECIPEID_CHR   = m_dt.Rows[i]["RECIPEID_CHR"].ToString().Trim();
                    oTemp.RECIPENAME_CHR = m_dt.Rows[i]["RECIPENAME_CHR"].ToString().Trim();
                    oTemp.USERCODE_CHR   = m_dt.Rows[i]["USERCODE_CHR"].ToString().Trim();
                    oTemp.WBCODE_CHR     = m_dt.Rows[i]["WBCODE_CHR"].ToString().Trim();
                    oTemp.Remark         = m_dt.Rows[i]["DISEASENAME_VCHR"].ToString().Trim();
                    objArrayList.Add(oTemp);
                }

                objArrayList.Sort();
                int      intCount  = 0;
                TreeNode FirstNode = null;
                this.m_objViewer.treeView1.Nodes.Add("模板列表");
                TreeNode FindNode    = this.m_objViewer.treeView1.Nodes[0];
                bool     blnIsExists = false;          //默认当前要添加的节点不存在
                foreach (AccordRecipeTarget objTemplateInfo in objArrayList)
                {
                    FindNode = this.m_objViewer.treeView1.Nodes[0];
                    string[] strSplitArry = objTemplateInfo.strArr;
                    for (int j = 0; j < strSplitArry.Length; j++)
                    {
                        blnIsExists = false;
                        for (int i2 = 0; i2 < FindNode.Nodes.Count; i2++)
                        {
                            if (strSplitArry[j] == FindNode.Nodes[i2].Text)
                            {
                                blnIsExists = true;                               //找到
                                FindNode    = FindNode.Nodes[i2];
                                break;
                            }
                        }
                        if (blnIsExists)                       //找到
                        {
                            if (j == strSplitArry.Length - 1)
                            {
                                TreeNode trAdd = new TreeNode(strSplitArry[j].Trim());
                                FindNode.Parent.Nodes.Add(trAdd);
                                trAdd.Tag                = objTemplateInfo;
                                trAdd.ImageIndex         = 2;
                                trAdd.SelectedImageIndex = 2;
                            }
                            continue;
                        }
                        else                        //找不到增加一个节点
                        {
                            TreeNode trAdd = new TreeNode(strSplitArry[j].Trim());
                            FindNode.Nodes.Add(trAdd);
                            if (j == strSplitArry.Length - 1)
                            {
                                trAdd.Tag                = objTemplateInfo;
                                trAdd.ImageIndex         = 2;
                                trAdd.SelectedImageIndex = 2;
                                if (intCount == 0)
                                {
                                    FirstNode = trAdd;
                                    intCount++;
                                }
                            }
                            FindNode = trAdd;
                        }
                    }
                }

                this.m_objViewer.treeView1.EndUpdate();
                this.m_objViewer.treeView1.SelectedNode = FirstNode;
            }
        }