当然有
<xs:element name="FDepartId" msdata:ReadOnly="true" msdata:AutoIncrement="true" type="xs:int" />
<xs:element name="FParentDepartId" type="xs:int" />
<xs:element name="FDepartSerial" type="xs:string" minOccurs="0" />
<xs:element name="FDepartName" type="xs:string" />
<xs:element name="FReserveredDepart" type="xs:boolean" />
这是数据结束
其中以FParentDepartId=0表示一级节点
在pageload中加入
this.InitTV_Depart(this.TV_Depart.Nodes,0);其中InitTV_Depart方法如下
private void InitTV_Depart(Microsoft.Web.UI.WebControls.TreeNodeCollection tnc,int intParentID)
{
System.Data.DataView dv=new System.Data.DataView();
dv.Table=this.dS_DepartInfo1.Tables[0];
dv.RowFilter="FParentDepartId="+intParentID.ToString(); int intDepartID;
Microsoft.Web.UI.WebControls.TreeNode tn;
foreach(System.Data.DataRowView drv in dv)
{
tn=new Microsoft.Web.UI.WebControls.TreeNode();
tn.NodeData =drv["FDepartId"].ToString().Trim();
tn.Text=drv["FDepartName"].ToString().Trim();
tnc.Add(tn); intDepartID=(int)drv["FDepartId"];
this.InitTV_Depart(tn.Nodes,intDepartID);
}
}将字段名和 treeview控件名换成你的试试
<xs:element name="FDepartId" msdata:ReadOnly="true" msdata:AutoIncrement="true" type="xs:int" />
<xs:element name="FParentDepartId" type="xs:int" />
<xs:element name="FDepartSerial" type="xs:string" minOccurs="0" />
<xs:element name="FDepartName" type="xs:string" />
<xs:element name="FReserveredDepart" type="xs:boolean" />
这是数据结束
其中以FParentDepartId=0表示一级节点
在pageload中加入
this.InitTV_Depart(this.TV_Depart.Nodes,0);其中InitTV_Depart方法如下
private void InitTV_Depart(Microsoft.Web.UI.WebControls.TreeNodeCollection tnc,int intParentID)
{
System.Data.DataView dv=new System.Data.DataView();
dv.Table=this.dS_DepartInfo1.Tables[0];
dv.RowFilter="FParentDepartId="+intParentID.ToString(); int intDepartID;
Microsoft.Web.UI.WebControls.TreeNode tn;
foreach(System.Data.DataRowView drv in dv)
{
tn=new Microsoft.Web.UI.WebControls.TreeNode();
tn.NodeData =drv["FDepartId"].ToString().Trim();
tn.Text=drv["FDepartName"].ToString().Trim();
tnc.Add(tn); intDepartID=(int)drv["FDepartId"];
this.InitTV_Depart(tn.Nodes,intDepartID);
}
}将字段名和 treeview控件名换成你的试试
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
If Not IsPostBack Then
intiTree(TreeView2.Nodes, "-1")
End If
End Sub Private Sub intiTree(ByRef Nds As TreeNodeCollection, ByVal parentId As String)
Dim sql As String = "select * from xj.treeview where par_id='" + parentId + "'"
Dim myDataAdapter As New OleDbDataAdapter(sql, con)
Dim ds As New DataSet()
myDataAdapter.Fill(ds, "tree")
Dim mydatable As DataTable
mydatable = ds.Tables("tree")
If mydatable.Rows.Count = 0 Then
Exit Sub
End If
Dim drv As DataRowView
Dim tmpNd As TreeNode
For Each drv In mydatable.DefaultView
tmpNd = New TreeNode()
Dim strid As String
strid = drv("CUR_ID")
tmpNd.ID = strid
tmpNd.Text = drv("F_NAME")
Nds.Add(tmpNd)
intiTree(tmpNd.Nodes, strid)
Next
End Sub