Ejemplo n.º 1
0
        private void BindKnowledgeTree(string strAll)
        {
            #region Bind knowledge tree

            KnowledgeBLL knowledgeBLL = new KnowledgeBLL();

            IList <RailExam.Model.Knowledge> knowledgeList = new List <RailExam.Model.Knowledge>();

            if (strAll == "ALL")
            {
                knowledgeList = knowledgeBLL.GetKnowledges();
            }
            else
            {
                if (PrjPub.CurrentLoginUser.SuitRange == 1)
                {
                    knowledgeList = knowledgeBLL.GetKnowledges();
                }
                else
                {
                    knowledgeList = knowledgeBLL.GetKnowledgesByOrgID(PrjPub.CurrentLoginUser.StationOrgID);
                }
            }

            if (knowledgeList.Count > 0)
            {
                TreeViewNode tvn = null;

                foreach (RailExam.Model.Knowledge knowledge in knowledgeList)
                {
                    tvn         = new TreeViewNode();
                    tvn.ID      = knowledge.KnowledgeId.ToString();
                    tvn.Value   = knowledge.IdPath;
                    tvn.Text    = knowledge.KnowledgeName;
                    tvn.ToolTip = knowledge.KnowledgeName;
                    tvn.Attributes.Add("isKnowledge", "true");
                    tvn.ImageUrl           = "~/App_Themes/" + StyleSheetTheme + "/Images/TreeView/Knowledge.gif";
                    tvn.ContentCallbackUrl = "../Common/GetKnowledgeBook.aspx?item=no&source=itemlist&id=" + knowledge.IdPath + "&postId=" + hfPostID.Value;

                    if (knowledge.ParentId == 0)
                    {
                        tvView.Nodes.Add(tvn);
                    }
                    else
                    {
                        try
                        {
                            tvView.FindNodeById(knowledge.ParentId.ToString()).Nodes.Add(tvn);
                        }
                        catch
                        {
                            tvView.Nodes.Clear();
                            SessionSet.PageMessage = "数据错误!";

                            return;
                        }
                    }
                }
            }
            //tvView.DataBind();
            //tvView.ExpandAll();

            #endregion
        }