首页 > 代码库 > TreeView的绑定
TreeView的绑定
最近遇到了TreeView的数据库绑定问题,确实是弄了我好几天,特别是多级节点的分步绑定,最开始不分步,发现全部加载页面都卡爆了,真心让人头疼。所以放出来,给需要的朋友看看,以免大家走冤枉路。
1.只有一级节点的数据表绑定
部分代码:
protected void treeviewbind() { string sqlstr=ConfigurationManager.AppSettings["constr"]; SqlConnection con = new SqlConnection(sqlstr); con.Open(); string strfac = "select * from tDepartment"; SqlDataAdapter ada = new SqlDataAdapter(strfac,con); DataTable dt = new DataTable(); ada.Fill(dt); string id = "Department"; string text = "Department"; Bind_Tv(dt, id,text); dt.Dispose(); ada.Dispose(); con.Close(); } protected void Bind_Tv(DataTable dt, string id, string text) //TreeView的递归绑定 { DataView dv = new DataView(dt);//将DataTable存到DataView中,以便于筛选数据 TreeNode tn;//建立TreeView的节点(TreeNode),以便将取出的数据添加到节点中 foreach (DataRowView row in dv) { tn = new TreeNode();//建立一个新节点(学名叫:一个实例) tn.Value = http://www.mamicode.com/row[id].ToString();//节点的Value值,一般为数据库的id值>
2.多级节点分步加载绑定
相关代码:<asp:TreeView ID="TreeView1" runat="server" ImageSet="Simple" CssClass="gridview_m" OnSelectedNodeChanged="TreeView1_SelectedNodeChanged" NodeIndent="35" ExpandDepth="0" ShowLines="True" OnTreeNodeExpanded="TreeView1_TreeNodeExpanded"> </asp:TreeView>protected void bind() //TreeView的数据绑定 { string sqlstr = ConfigurationManager.AppSettings["constr"]; SqlConnection conn = new SqlConnection(sqlstr); conn.Open(); string sqlsel = "select * from tDataSheetDirectory"; SqlCommand cmd = new SqlCommand(sqlsel, conn); SqlDataAdapter sda = new SqlDataAdapter(cmd); DataTable dt = new DataTable(); sda.Fill(dt); string id = "DataSheetDirectoryID"; string text = "DirectoryName"; string pid = "FatherID"; DataView dvtop = new DataView(dt); //添加根节点 TreeNode tntop = new TreeNode(); dvtop.RowFilter = "FatherID is null"; foreach (DataRowView row in dvtop) { tntop.Value = http://www.mamicode.com/row[id].ToString();>
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。