DataTable newTable=new DataTable();
DataRow anyRow=newTable.NewRow();
anyRow[0]="Name";
anyRow[1]="ArriveTime";
anyRow[2]="LeaveTime";
anyRow[3]="TravelTime";
anyRow[4]="TravelDistance";
newTable.Rows.Add(anyRow);
dataGrid1.DataSource=newTable;
为什么总报错:无发找到第0列!

解决方案 »

  1.   

    DataTable newTable=new DataTable();
    这时并没有创建任何列,
    DataRow anyRow=newTable.NewRow();//注意,你增加的行没有任何列,所以
    anyRow[0]="Name";
    anyRow[1]="ArriveTime";
    anyRow[2]="LeaveTime";
    anyRow[3]="TravelTime";
    anyRow[4]="TravelDistance";
    中括号中的数字引用即列引用是不行的
      

  2.   

    DataTable newTable=new DataTable();
    这时并没有创建任何列,
    newTable.Columns.Add("",typeof())
    ...
    ...
    ...
    ...
    DataRow anyRow=newTable.NewRow();//
    anyRow[0]="Name";
    anyRow[1]="ArriveTime";
    anyRow[2]="LeaveTime";
    anyRow[3]="TravelTime";
    anyRow[4]="TravelDistance";
      

  3.   

    你先得Columns.Add才行,就好比你建了表,还要添加列哈,要不数据往哪里存?
      

  4.   

    请看下例:
    DataTable dt = new DataTable();
    DataColumn dc = new DataColumn("NewCol");
    dt.Columns.Add(dc);
    DataRow dr = new DataRow();
    dr["NewCol"] ="你的值";
      

  5.   

    更正:DataRow dr = new DataRow();
    改为:DataRow dr = dt.NewRow();//这样才能获得与dt表结构一致的新行