动态添加treeview
private void bindtreeview()
{
this.TreeView1.Nodes.Clear();
string strsql = "select * from title,detitle where title.title_id=detitle.title_id";
DataSet ds = DB.ds(strsql);
this.ViewState["DataSet_Tree"] = ds;
addtree(0, (TreeNode)null);
}
public void addtree(int ParentId, TreeNode pnode)
{
DataSet DataSet_Tree = (DataSet)this.ViewState["DataSet_Tree"];
DataView DataView_Tree = new DataView(DataSet_Tree.Tables[0]);
DataView_Tree.RowFilter = "title_id=" + ParentId;
foreach (DataRowView row in DataView_Tree)
{
TreeNode Node = new TreeNode();
if (pnode == null)
{
Node.Text = row["title_name"].ToString();
Node.Value = row["title_id"].ToString();
this.TreeView1.Nodes.Add(Node);
Node.Expanded = true;//展开当前节点
addtree(Int32.Parse(row["title_id"].ToString()), Node);
}
else
{
Node.Text = row["detitle_name"].ToString();
Node.Value=row["detitle_id"].ToString();
pnode.ChildNodes.Add(Node);
Node.Expanded = true;
addtree(Int32.Parse(row["detitle_id"].ToString()), Node);
}
}