给你一个递归算法,这个算法是得到xml中的所有节点,自己稍微改改 
//增加单个节点  
private void Expand(XmlNode  aXmlNode,TreeNode aTreeNode){
if (aXmlNode.ChildNodes.Count>0){
       for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
   TreeNode treeTmpNode;
                   treeTmpNode=aTreeNode.Nodes.Add(aXmlNode.ChildNodes.Item (i).Name.ToString());
       }
        }
}
        //增加所有分支(递归算法)
private void ExpandAll(XmlNode  aXmlNode,TreeNode aTreeNode)
{
 Expand(aXmlNode,aTreeNode);
 //增加子节点
         if (aXmlNode.ChildNodes.Count>0){
        for (int i=0; i<aXmlNode.ChildNodes.Count ; i++) {
   ExpandAll(aXmlNode.ChildNodes.Item(i),aTreeNode.Nodes[i] );
    }
     }
   }使用方法:
//得到Xml的根,作为TreeView的根节点
XmlNode xmlRootNode;
TreeNode treeRootNode; xmlRootNode=xmldom.DocumentElement;
treeRootNode=treeView1.Nodes.Add(xmlRootNode.Name.ToString());
            ExpandAll(xmlRootNode,treeRootNode);