代码如下:
                      DataGrid DataGrid1;
                          DataTable dt =MM.Get();//原始数据
DataRow[] row = dt.Select("", "SortID ASC");
DataTable Dt = dt.Clone();
for(int i=0;i<row.Length;i++)
{

Dt.ImportRow(row[i]);
}
                    DataGrid1.DataSource=Dt;
DataGrid1.DataBind();
现在的问题是DataGrid1显示出来的排序不是从小到大
比如我想要的顺序            1,2,3,4,10,11
但是出来的是               1,10,11,2,3,4

解决方案 »

  1.   

    忘记说了数据源是从 XML读取的时候就会这样 
    同样的数据从SQL里读就能正常排序
    数据完全一样郁闷了
      

  2.   

    这是因为字段本身是数值型的,而xml文件不能保存字段类型,再读进来就变成字符型了,解决方法:对此表建立一个类型化数据集,再利用filestream 和 XmlTextReader 读入xml 文件
      

  3.   

    你的数据实际也是排序的了,只不过是按照字符型在排序,你需要找到一个int型的列来设置该列