具体说说吧,这个菜单是在用户的个人中心用的。
比如说,网站的服务有五个频道,每个频道下又有不同的栏目,每个栏目都有几个操作,如发表的帖子、回复的帖子、收藏的帖子。这是个导航链接,当点击树形菜单中的“发表的帖子”就会链接到相应页面。
也就是像CSDN这样的导航菜单,有个加号,点击加号后加号变成减号并自动展开子菜单内容,,点击减号后,减号变成加号并自动折叠子菜单。
请教大侠们,给个思路吧,C#如何实现?谢谢!能给个简单完整的例子,就更感谢了。

解决方案 »

  1.   

    vs自己带的treeview控件就有这个功能,不需要你自己实现。
      

  2.   

    熟悉一下treeview控件就可以实现了
      

  3.   

    直接用treeview控件就是啊,设定好他的父节点和子节点就可以!
      

  4.   


    private System.Windows.Forms.TreeView tvManage;
    this.tvManage = new System.Windows.Forms.TreeView();  System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(FormMain));
                System.Windows.Forms.TreeNode treeNode1 = new System.Windows.Forms.TreeNode("管理员管理");
                System.Windows.Forms.TreeNode treeNode2 = new System.Windows.Forms.TreeNode("安全管理");
                System.Windows.Forms.TreeNode treeNode3 = new System.Windows.Forms.TreeNode("资金出入");
                System.Windows.Forms.TreeNode treeNode4 = new System.Windows.Forms.TreeNode("账户管理", new System.Windows.Forms.TreeNode[] {
                treeNode2,
                treeNode3});
                System.Windows.Forms.TreeNode treeNode5 = new System.Windows.Forms.TreeNode("交易时间管理");
                System.Windows.Forms.TreeNode treeNode6 = new System.Windows.Forms.TreeNode("节假日管理");
                System.Windows.Forms.TreeNode treeNode7 = new System.Windows.Forms.TreeNode("交易单管理");
                System.Windows.Forms.TreeNode treeNode8 = new System.Windows.Forms.TreeNode("交易商品管理");
                System.Windows.Forms.TreeNode treeNode9 = new System.Windows.Forms.TreeNode("节点8");
                System.Windows.Forms.TreeNode treeNode10 = new System.Windows.Forms.TreeNode("节点9");
                System.Windows.Forms.TreeNode treeNode11 = new System.Windows.Forms.TreeNode("节点10");
                System.Windows.Forms.TreeNode treeNode12 = new System.Windows.Forms.TreeNode("节点11");
                System.Windows.Forms.TreeNode treeNode13 = new System.Windows.Forms.TreeNode("节点12");
                System.Windows.Forms.TreeNode treeNode14 = new System.Windows.Forms.TreeNode("节点13");
                System.Windows.Forms.TreeNode treeNode15 = new System.Windows.Forms.TreeNode("节点14");
                System.Windows.Forms.TreeNode treeNode16 = new System.Windows.Forms.TreeNode("节点15");
                System.Windows.Forms.TreeNode treeNode17 = new System.Windows.Forms.TreeNode("节点16");
                System.Windows.Forms.TreeNode treeNode18 = new System.Windows.Forms.TreeNode("节点17");
                System.Windows.Forms.TreeNode treeNode19 = new System.Windows.Forms.TreeNode("节点18");
                System.Windows.Forms.TreeNode treeNode20 = new System.Windows.Forms.TreeNode("节点19");
                System.Windows.Forms.TreeNode treeNode21 = new System.Windows.Forms.TreeNode("节点20");
                System.Windows.Forms.TreeNode treeNode22 = new System.Windows.Forms.TreeNode("Sunde server", new System.Windows.Forms.TreeNode[] {
                treeNode1,
                treeNode4,
                treeNode5,
                treeNode6,
                treeNode7,
                treeNode8,
                treeNode9,
                treeNode10,
                treeNode11,
                treeNode12,
                treeNode13,
                treeNode14,
                treeNode15,
                treeNode16,
                treeNode17,
                treeNode18,
                treeNode19,
                treeNode20,
                treeNode21});
    // 
                // tvManage
                // 
                this.tvManage.Dock = System.Windows.Forms.DockStyle.Fill;
                this.tvManage.Location = new System.Drawing.Point(0, 0);
                this.tvManage.Name = "tvManage";
                treeNode1.Checked = true;
                treeNode1.Name = "tnSystemAdmin";
                treeNode1.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
                treeNode1.Text = "管理员管理";
                treeNode2.Name = "tdAccountCapital";
                treeNode2.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
                treeNode2.Text = "安全管理";
                treeNode3.Name = "tdCapitalRecord";
                treeNode3.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
                treeNode3.Text = "资金出入";
                treeNode4.Checked = true;
                treeNode4.Name = "tdAccount";
                treeNode4.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F);
                treeNode4.Text = "账户管理";
                treeNode5.Checked = true;
                treeNode5.Name = "tnTradeTime";
                treeNode5.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F);
                treeNode5.Text = "交易时间管理";
                treeNode6.Checked = true;
                treeNode6.Name = "tnHoliday";
                treeNode6.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F);
                treeNode6.Text = "节假日管理";
                treeNode7.Checked = true;
                treeNode7.Name = "tnTradeOrder";
                treeNode7.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F);
                treeNode7.Text = "交易单管理";
                treeNode8.Checked = true;
                treeNode8.Name = "tnTradeSymbol";
                treeNode8.NodeFont = new System.Drawing.Font("微软雅黑", 8.25F);
                treeNode8.Text = "交易商品管理";
                treeNode9.Name = "节点8";
                treeNode9.Text = "节点8";
                treeNode10.Name = "节点9";
                treeNode10.Text = "节点9";
                treeNode11.Name = "节点10";
                treeNode11.Text = "节点10";
                treeNode12.Name = "节点11";
                treeNode12.Text = "节点11";
                treeNode13.Name = "节点12";
                treeNode13.Text = "节点12";
                treeNode14.Name = "节点13";
                treeNode14.Text = "节点13";
                treeNode15.Name = "节点14";
                treeNode15.Text = "节点14";
                treeNode16.Name = "节点15";
                treeNode16.Text = "节点15";
                treeNode17.Name = "节点16";
                treeNode17.Text = "节点16";
                treeNode18.Name = "节点17";
                treeNode18.Text = "节点17";
                treeNode19.Name = "节点18";
                treeNode19.Text = "节点18";
                treeNode20.Name = "节点19";
                treeNode20.Text = "节点19";
                treeNode21.Name = "节点20";
                treeNode21.Text = "节点20";
                treeNode22.Checked = true;
                treeNode22.Name = "";
                treeNode22.NodeFont = new System.Drawing.Font("新宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
                treeNode22.Text = "Sunde server";
                this.tvManage.Nodes.AddRange(new System.Windows.Forms.TreeNode[] {
                treeNode22});
                this.tvManage.Size = new System.Drawing.Size(194, 320);
                this.tvManage.TabIndex = 0;
                this.tvManage.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.treeView1_NodeMouseClick);
    this.Controls.add(tvManage);
      

  5.   

    楼上几位说的是winform程序吧,楼主想要网页程序用js实现吧.........
      

  6.   

    就是,直接用vs自带的treeview控件就可以了啊