大家都知道 梅花雪树型菜单吧!!!!  我想知道asp.net 版的 怎么用, 我是节点文字和url都存在数据库中的,我通过datatable 读出来的 想知道 怎么绑定到这棵树上@@@@@@@@@@@@@@@@@@@ 高手帮忙啊!!!!!!!!!!急!!!!!!

解决方案 »

  1.   

    梅花雪?
    treview的有属性可以设定,当然在代码里实现属性设定。
      

  2.   

    http://www.meizz.com/Web/Download/MzTreeView10.rar  这里有下载地址 你看看
      

  3.   

    它上面的实例 是asp的啊   没有.net,asp看不懂
      

  4.   

    protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                TreeViewBind();
            }
        }    #region 第一次加载绑定TreeView出来 "左边的DIV"
        private void TreeViewBind()
        {
            SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SystemManageConnectionString"].ConnectionString);
            //查询出数据超出范围的
            AdminModel Admin_Model = (AdminModel)Session["Admin_Info"];
            string BOOTName = "select * from BOOT where BT_ADID='" + Admin_Model.AD_ID1 + "'";
            SqlCommand cmd1 = new SqlCommand(BOOTName, conn);        try
            {
                conn.Open();
                SqlDataReader dr1 = cmd1.ExecuteReader();            while (dr1.Read())
                {
                    //添加第一层TreeNode
                    TreeNode tn = new TreeNode((string)dr1["BT_Name"], (string)dr1["BT_Serial"]);
                    //连接到页面
                    tn.NavigateUrl = "ReceiveBootInfo.aspx?Serial=" + dr1["BT_Serial"].ToString() + "&name=" + dr1["BT_Name"].ToString();
                    //添加到TreeView
                    TreeView1.Nodes.Add(tn);
                }            dr1.Close();            for (int i = TreeView1.Nodes.Count - 1; i >= 0; i--)
                {
                    TreeNode node = TreeView1.Nodes[i];                string IOName = "select * from ComputerInfo where CI_Serial='" + node.Value + "'";                SqlCommand cmd2 = new SqlCommand(IOName, conn);                SqlDataReader dr2 = cmd2.ExecuteReader();                while (dr2.Read())
                    {
                        //添加第二层
                        TreeNode tn = new TreeNode((string)dr2["CI_Name"], (string)dr2["CI_Serial"]);
                        //连接到页面
                        tn.NavigateUrl = "ReceiveInfo.aspx?Serial=" + dr2["CI_Serial"].ToString() + "&name=" + dr2["CI_Name"].ToString();
                        node.ChildNodes.Add(tn);
                    }
                    dr2.Close();            }
            }
            catch (SqlException ex)
            {
                Response.Write(ex.Message);
            }
            finally
            {
                conn.Close();
            }    }自己修改下就能用了,我那些连接是写死的,你就把数据库的字段绑定出来就行了,跟那些名一样绑定出来
      

  5.   

    以前写的例子:
    梅花雪树2.0和测试例子
    http://blog.csdn.net/gdjlc/archive/2009/10/27/4733238.aspx<html xmlns="http://www.w3.org/1999/xhtml" >
    <head runat="server">
        <title>无标题页</title>
        <script type="text/javascript" src="scripts/jsframework.js"></script>   
    </head>
    <body>
        <form id="form1" runat="server">
        <script type="text/javascript" language="javascript">
            var data={};
            data["-1_0"] = "text: 根目录;";        <% LoadTree();%>       
           //*
            Using("System.Web.UI.WebControls.MzTreeView");
            var a = new MzTreeView();
            a.dataSource = data
         
            a.autoSort=false;
           // a.useCheckbox=true
            a.canOperate=true;
            document.write(a.render());
            a.expandLevel(1);
            //*/
        </script>   
        </form>
    </body>
    </html>
    --------------------------------------------------------------------------------
     public void LoadTree()
        {
            string nodes = "";
            DataTable dt = bind();        foreach (DataRow dr in dt.Rows)
            {
                nodes = " \r\n data[\'" + dr["pid"].ToString() + "_" + dr["id"].ToString() + "\'] = \'text:" + dr["name"].ToString() + ";url:" + dr["url"].ToString() + "\';\r\n";
                Response.Write(nodes);
            }
        }