/// <summary>
/// 创建跟节点
/// </summary>
private void CreateRoot()
{
//getparentid();
SourceLib.Nodes.Clear();
//下面才是绑定素材库树
DataView myDv=myDB.GetDataView("select TaskActiveID,Name from tb_TaskActive where ParentID=0 and teacherid='"+Session["userid"].ToString()+"'"+
" and Courseid='"+Session["courseid"].ToString()+"'");

for(int i=0;i<=myDv.Table.Rows.Count-1;i++) 
{
TreeNode myTreeNode=new TreeNode();
myTreeNode.ID=myDv.Table.Rows[i][0].ToString();
myTreeNode.NavigateUrl="coursemanage.aspx?TaskActiveID=" + myTreeNode.ID;
myTreeNode.Target="main";
myTreeNode.Text=Base.Functions.Decode(myDv.Table.Rows[i][1].ToString());
SourceLib.Nodes.Add(myTreeNode);

string id=myTreeNode.ID;
InitTree(myTreeNode,id); //调用InitTree函数 形成整棵树
}
try
{
ViewState["selectid"]=this.SourceLib.GetNodeFromIndex(ViewState["index"].ToString()).ID;//获得SelectedNode.ID ;
if (ViewState["index"]!=null)
{
SourceLib.SelectedNodeIndex=ViewState["index"].ToString();
SourceLib.Nodes[int.Parse(ViewState["index"].ToString())].Expanded=true;
}

}
catch
{
}
}
/// <summary>
/// //深度递归创建所有子节电
/// </summary>
/// <param name="TN">节点</param>
/// <param name="ParentId">父节点ID</param>
private void InitTree(TreeNode TN,string ParentId)
{
DataView myDv=myDB.GetDataView("select TaskActiveID,Name from tb_TaskActive where ParentID="+ParentId);
for(int i=0;i<=myDv.Table.Rows.Count-1;i++)            
{
TreeNode myTreeNode=new TreeNode();
myTreeNode.ID=myDv.Table.Rows[i][0].ToString();
myTreeNode.Text=Base.Functions.Decode(myDv.Table.Rows[i][1].ToString());
myTreeNode.NavigateUrl="coursemake.aspx?activeid="+myTreeNode.ID+"&courseid="+ViewState["courseid"]+"&userid="+ViewState["userid"];
myTreeNode.Target="main";
TN.Nodes.Add(myTreeNode); string id=myTreeNode.ID;
InitTree(myTreeNode,id); //递归调用InitTree函数 形成所有子树
}
}