DataRow.DataTable可以访问到该行所在的表结构,然后就可以用Columns属性遍历了。

解决方案 »

  1.   

    void test(DataRow dr)
    {
        DataTable dt = dr.Table;
        DataColumn [] dcs = dt.Columns;
        for(int i=0;i<dcs.Length;i++)
        {
            Console.WriteLine("ColumnName="+dcs[i].ColumnName);
            Console.WriteLine("DataType="+dcs[i].DataType.FullName);    }
    }
      

  2.   

    private void GetColumnInfor(DataRow objDR)
    {
    foreach(DataColumn da in objDR.Table.Columns)
    {
    MessageBox.Show(da.ColumnName);
    MessageBox.Show(da.DataType.FullName);
    }
    }
      

  3.   

    System.Collections.ArrayList list=new ArrayList();
    foreach(DataRow dr in datarow)
    {
        foreach(DataColumn col in dr.Table.Columns)
        {
            string [] colInform=new string[2];
            colInform[0]=col.ColumnName;
            colInform[1]=col.DataType.ToString();
            list.Add(colInform);
        }
    }