数据库中的表的设计:
fatherid    childrenid   zhiwuName  description  (database=server)
   int        int 主键     varchar    varchar
把第一行的fatherid设为100,为根节点
整个数据绑定的代码有点问题,向CSDN中在线的大虾们请教一下,在这里感谢了 private void getData()
{
sqlConnection2.Open();
sqlDataAdapter1.Fill(dataSet11);
dataView1=dataSet11.Tables["zhiwuTab"].DefaultView;
dataView1.RowFilter="fatherid=100";
TreeNodeCollection nodes=this.TreeView1.Nodes;
TreeNode root=new TreeNode();
foreach(DataRowView dataRow in dataView1)
{
root.ID=dataRow["childrenid"].ToString();
root.Text=dataRow["zhiwuName"].ToString();
nodes.Add(root);
InitChildNode(root.Nodes,root.ID);
}
dataSet11.Clear();
sqlConnection2.Close();
}
private void InitChildNode(TreeNodeCollection nodes,string parentid)
{

DataView dataView2=new DataView();
sqlDataAdapter1.Fill(dataSet11);
dataView2=dataSet11.Tables["zhiwuTab"].DefaultView;
dataView2.RowFilter="fatherid="+parentid+"";
DataView dataView3=new DataView();
foreach(DataRowView dataRow in dataView2)
{
//if(dataRow["childrenid"]==null)
//break;
TreeNode node=new TreeNode();
node.ID=dataRow["childrenid"].ToString();
node.Text=dataRow["zhiwuName"].ToString();
nodes.Add(node);
InitChildNode(node.Nodes,node.ID);
}
dataView3=dataView2;

} private void Button1_Click(object sender, System.EventArgs e)
{
getData();
}
}出错的页面提示说:在位置 1 处没有任何行。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.IndexOutOfRangeException: 在位置 1 处没有任何行。源错误: 
行 160: //break;
行 161: TreeNode node=new TreeNode();
行 162: node.ID=dataRow["childrenid"].ToString();
行 163: node.Text=dataRow["zhiwuName"].ToString();
行 164: nodes.Add(node);