解决方案 »

  1.   


    这是我自己写的能显示在Listview中的代码
    我应该怎样改 才能  让用户名以Treeview根节点的形式显示在Treeview中?
      

  2.   

    新建parentNode,名称为用户名,为其属性Nodes增加孩子nodes。
      

  3.   

    循环数据库
    {
    treeView1.Nodes.Add
    }
      

  4.   

    选中树控件,右键,打开属性窗口,在事件 选项卡中,有树控件的事件列表,看到有nodeclick 的字样的就是,双击它就自己创建事件代码了。
      

  5.   

    把数据库中的数据添加到TreeView节点示例
    //TreeView控件设置
     <asp:TreeView ID="TreeView1" runat="server"  ExpandDepth="1" NodeWrap="True" 
                onselectednodechanged="TreeView1_SelectedNodeChanged1" >
            </asp:TreeView>
    //添加节点
    protected SqlConnection myConn;
        protected SqlDataAdapter myAdapter;
        protected DataSet data;
        protected string query;    
        protected void Page_Load(object sender, EventArgs e)
        {        if (!IsPostBack)
            {
                //获取数据连接语句,并创建数据库连接对象
                myConn = DBClass.GetConnection();
                CreateDataSet();
                InitTree(TreeView1.Nodes, "0");
            }
        }//codego.net/tags/11/1/
        public DataSet CreateDataSet()
        {
            query = "select * from tbTree";
            myAdapter = new SqlDataAdapter(query, myConn);
            data = new DataSet();
            myAdapter.Fill(data, "tree");
            return data;    }
        //从DataSet中取数据建树
        //从根节点开始递归调用显示子树
        public void InitTree(TreeNodeCollection Nds, string parentId)
        {
            TreeNode NewNode;
            //data为存储建树数据信息的数据集
            //用父节点进行筛选数据集中信息
            DataRow[] rows = data.Tables[0].Select("parent_Id='" + parentId + "'");
            foreach (DataRow row in rows)
            {            NewNode = new
                    TreeNode(row["title"].ToString(),                            //设置父节点
                    row["Files_Id"].ToString(), "images/1.gif", row["NavigateUrl"].ToString(), "");
                Nds.Add(NewNode);
              
                InitTree(NewNode.ChildNodes, row["Files_Id"].ToString());//添加子节点
            }
        }    protected void TreeView1_SelectedNodeChanged1(object sender, EventArgs e)
        {
            int nodeId = Convert.ToInt32(TreeView1.SelectedValue);//获取TreeView控件选择的值
            string url = DBClass.GetUrl(nodeId);//获取指定地址
            Response.Redirect(url.ToString());//转到指定页
        }
    //利用存储过程从数据库中获取TreeView中某个节点的关联地址
    public static GetUrl(int filesID)
    {
      SqlConnection myConnection = GetConnection();
      SqlCommand myCommand = new SqlCommand("GetUrl",myConnection);
    myCommand.CommandType=ConnandType.StoredProcedure;
    //添加参数
    SqlParameter FilsesId = new SqlParameter("@FilesId" , SqlDbType.Int,4);
    FilsesId.Value = filesId;
    myCommand.Parameters.Add(FilsesId);
    //添加参数
    SqlParameter Url = new SqlParameter("@Url", SqlDbType.NVarChar,100);
    Url.Direction = ParameterDirection.Output;
    myConnection.Open();
    myCommand.ExecuteNonQuery();
    string url Url.Value.ToString();
    myCommand.Dispose();
    myConnection.Dispose();
    return url;
    }//如果仅需要跟节点那取消添加节点即可!
      

  6.   

    要看你要什么事件了,在窗体编辑界面选中treeview控件,然后属性窗口中找到闪电图标点一下,找到你要的事件后双击添加相应代码
      

  7.   

    将数据库数据添加到TreeView视图中
     private void Form1_Load(object sender, EventArgs e)
            {
                treeView1.ShowLines = true;//设置绘制连线
                treeView1.ImageList = imageList1;//设置ImageList属性
                string P_Connection = string.Format(//创建数据库连接字符串
                 "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=test.mdb;User Id=Admin");
                OleDbConnection P_OLEDBConnection = //创建连接对象
                    new OleDbConnection(P_Connection);
                P_OLEDBConnection.Open();//连接到数据库
                OleDbCommand P_OLEDBCommand = new OleDbCommand(//创建命令对象
                    "select * from [Ware]",
                    P_OLEDBConnection);
                OleDbDataReader P_Reader = //得到数据读取器
                    P_OLEDBCommand.ExecuteReader();
                TreeNode newNode1 = treeView1.Nodes.Add("A","商品信息",1,2);//一级节点
                while (P_Reader.Read())
                {
                    TreeNode newNode12 = new TreeNode(//二级节点
                        "商品编号" + P_Reader[1].ToString(), 3, 4);
                    newNode12.Nodes.Add("A", "商品名称:" + P_Reader[0].ToString(), 5, 6);
                    newNode12.Nodes.Add("A", "商品数量:" + P_Reader[3].ToString(), 7, 8);
                    newNode12.Nodes.Add("A", "商品价格:" + P_Reader[2].ToString(), 9, 10);
                    newNode1.Nodes.Add(newNode12);//添加节点
               
                }//codego.net/tags/1/1/
                P_OLEDBConnection.Close();//关闭数据库连接
                treeView1.ExpandAll();//展开所有节点
            }
        }