a.Rows和b.Rows的数量不一样,如果你按照a去循环,那就是0~1,共两行

解决方案 »

  1.   

    怎样个递归法?
    foreach?
    能码几个来看下吗?
      

  2.   

    b.Rows[j][0].ToString()==a.Rows[i][0].ToString()
    DataTable是引用类型,里面是object类型的元素,不要直接比较单元格是否相等,想比较值是否相等,先转string类型
      

  3.   


                    if(b.Rows[j][0]==a.Rows[i][0])
                    {TreeNode f1 = new TreeNode();
    new的操作放到if里面,不一样就别新建个子节点再丢弃了,先判断一样,再创建子节点
      

  4.   

    用string类型对比就好了,谢谢@Z65443344