void PopularTreeView() { trwTelasDisponiveis.Nodes.Clear(); trwTelasSelecionadas.Nodes.Clear(); trwTelasSelecionadas.Nodes.Add(new TreeNode() { Text = "Tela", Tag = "" }); trwTelasDisponiveis.Nodes.Add(new TreeNode() { Text = "Tela", Tag = "" }); //TELAS List <SYS_MENU_DTO> lista_menu = new SYS_MENU_BLL().Listar(); lista_telas = lista_menu; if (lista_menu.Count > 0) { TreeNode node = trwTelasDisponiveis.Nodes[0]; foreach (SYS_MENU_DTO menu in lista_menu) { TreeNode node_Filho = new TreeNode(); node_Filho.Text = menu.DESCRICAO; node_Filho.Tag = menu.ID; node.Nodes.Add(node_Filho); } trwTelasDisponiveis.Nodes[0].Expand(); } }
private void LoadNavMenu(string pid, TreeNodeCollection treeNodeCollection) { SYS_MENU_BLL BLL = new SYS_MENU_BLL(); DataTable dt = BLL.LoadNavMenu(pid); //加载数据 foreach (DataRow dr in dt.Rows) { TreeNode tnode = treeNodeCollection.Add(dr[1].ToString()); tnode.Tag = dr[0]; LoadNavMenu((string)dr[0], tnode.Nodes); } }
/// <summary> /// 导航栏项目选中事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) { TreeNode CurrentNode = e.Node;//获取当前选中的节点 if (CurrentNode.Tag != null) { string menu_code = CurrentNode.Tag.ToString(); //根据Menu_code查询对应的Menu_Unit打开相应的窗体 SYS_MENU_BLL bll = new SYS_MENU_BLL(); SYS_MENU menu = bll.GetMenuByCode(menu_code); //tring formName = menu.MENU_UNIT; string strnamespace = "MyERP.UI";//根据你自己的命名空间来修改 string strfrm = menu.MENU_UNIT; //注意:要动态打开的窗体要放在MyERP.UI根目录下一行才能找到 (strnamespace + "." + strfrm) Form frm = (Form)Assembly.Load(strnamespace).CreateInstance(strnamespace + "." + strfrm); if (frm != null) { Add_TabPage(menu.MENU_NAME, frm); } } }