public static void InitModuleCatlog(TreeView View) { View.Nodes.Clear(); TreeNode TopNode = new TreeNode(); TopNode.Name = ""; TopNode.Text = "模板列表"; TopNode.SelectedImageIndex = 1; TopNode.ImageIndex = 0; View.Nodes.Add(TopNode); DataSet ds = ModuleHelperClient.GetModuleCategoryAndModule(); DataTable dt = ds.Tables["dbo.sys_biz_ModuleCatlog"]; DataTable sheetDT = ds.Tables["dbo.sys_module"]; string strDeniedModuleIDs = ""; //Yqun.Common.ContextCache.ApplicationContext.Current.DeniedModuleIDs; List <string> lstDeniedModuleIDs; if (!string.IsNullOrEmpty(strDeniedModuleIDs)) { lstDeniedModuleIDs = new List <string>(strDeniedModuleIDs.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries)); } else { lstDeniedModuleIDs = new List <string>(); } bool isDenied = false; if (dt != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { TreeNode node = new TreeNode(); node.Name = row["CatlogCode"].ToString(); node.Text = row["CatlogName"].ToString(); node.SelectedImageIndex = 1; node.ImageIndex = 0; node.Tag = false; TopNode.Nodes.Add(node); DataRow[] sheetRows = sheetDT.Select("CatlogCode like '" + row["CatlogCode"] + "%' ", "Name asc"); if (sheetRows != null && sheetRows.Length > 0) { foreach (DataRow r1 in sheetRows) { TreeNode n = new TreeNode(); n.Name = r1["ID"].ToString(); n.Text = r1["Name"].ToString(); n.SelectedImageIndex = 2; n.ImageIndex = 2; n.Tag = true; if (lstDeniedModuleIDs.Count > 0) { isDenied = false; foreach (string item in lstDeniedModuleIDs) { if (item == n.Name) { isDenied = true; break; } } } if (isDenied == true) { continue; } else { node.Nodes.Add(n); } } } } } View.ExpandAll(); }