ASP.NET2.0 TreeView的数据库绑定

 
<% @ Page Language = " C# "  AutoEventWireup = " true "  CodeFile = " Default.aspx.cs "  Inherits = " _Default "   %>

<! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >

< html  xmlns ="http://www.w3.org/1999/xhtml"   >
< head  runat ="server" >
    
< title > 无标题页 </ title >
< style  type ="text/css" >
<!--
body,td,th 
{
    font-family
:  宋体 ;
    font-size
:  9pt ;
}
body 
{
    margin-left
:  0px ;
    margin-top
:  0px ;
    margin-right
:  0px ;
    margin-bottom
:  0px ;
}
-->
</ style >
</ head >
< body >
    
< form  id ="form1"  runat ="server" >
    
< div >
    
< asp:TreeView  ID ="TreeView1"  runat ="server"  Width ="100%"   />
  
</ div >
    
</ form >
</ body >
</ html >

using  System;
using  System.Data;
using  System.Configuration;
using  System.Collections;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;
using  System.Data.SqlClient;

public  partial  class  _Default : System.Web.UI.Page
{
    
protected   void  Page_Load( object  sender, EventArgs e)
    {
        
if  ( ! IsPostBack)
        {
            TreeViewBind();
        }
    }
    主从表绑定
#region  主从表绑定
    
private   void  TreeViewBind()
    {
        DataSet dst 
=  GetTreeViewData();
        
foreach  (DataRow masterRow  in  dst.Tables[ " sProBigName " ].Rows)
        {
            TreeNode masterNode 
=   new  TreeNode(( string )masterRow[ " sProBigName " ]);
            TreeView1.Nodes.Add(masterNode);
            
foreach  (DataRow childRow  in  masterRow.GetChildRows( " child " ))
            {
                TreeNode childNode 
=   new  TreeNode(( string )childRow[ " sProSmallSortName " ]);
                masterNode.Expanded 
=   false ;
                masterNode.ChildNodes.Add(childNode);
            }
        }
    }

    
private  DataSet GetTreeViewData()
    {
        SqlConnection Conn 
=   new  SqlConnection(System.Configuration.ConfigurationManager.AppSettings[ " ConnectionSqlServer " ].ToString());
        SqlDataAdapter BigSort 
=   new  SqlDataAdapter( " select * from [Yp_ProBigSort] " , Conn);
        SqlDataAdapter SmallSort 
=   new  SqlDataAdapter( " select * from [Yp_ProSmallSort] " , Conn);
        DataSet ds 
=   new  DataSet();
        BigSort.Fill(ds, 
" sProBigName " );
        SmallSort.Fill(ds, 
" sProSmallSortName " );
        ds.Relations.Add(
" child " , ds.Tables[ " sProBigName " ].Columns[ " iProBigSort_ID " ], ds.Tables[ " sProSmallSortName " ].Columns[ " iProBigSortID " ]);
        
return  ds;       
    }
    
#endregion
}



Yp_ProBigSort表
数据结构:
iProBigSort_ID(父表主键)
sProBigName(根节点名称)

iProBigSort_ID      sProBigName
1                              普通内科
2                              普通外科
3                              妇产科

Yp_ProSmallSort表
iProSmallSort_ID(子表主键)
iProBigSortID(父表主键)
sProSmallSortName(子节点名称)

iProSmallSort_ID       iProBigSortID       sProSmallSortName
1                                         1                                 感冒
2                                         1                                 发烧
3                                         2                                 普通外科1
4                                         2                                 普通外科2
5                                         3                                 妇产科1
6                                         3                                 妇产科2





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值